多數(shù)情況下,只需為聲明的變量賦一個(gè)值。只包含一個(gè)值的變量被稱為標(biāo)量變量。有時(shí)候,將多個(gè)相關(guān)值賦給一個(gè)變量更為方便,因此可以創(chuàng)建包含一系列值的變量,稱為數(shù)組變量。數(shù)組變量和標(biāo)量變量是以相同的方式聲明的,的區(qū)別是聲明數(shù)組變量時(shí)變量名后面帶有括號(hào) ( )。下例聲明了一個(gè)包含 11 個(gè)元素的一維數(shù)組:
Dim A(10)
雖然括號(hào)中顯示的數(shù)字是 10,但由于在 VBScript 中所有數(shù)組都是基于 0 的,所以這個(gè)數(shù)組實(shí)際上包含 11 個(gè)元素。在基于 0 的數(shù)組中,數(shù)組元素的數(shù)目總是括號(hào)中顯示的數(shù)目加 1。這種數(shù)組被稱為固定大小的數(shù)組。
在數(shù)組中使用索引為數(shù)組的每個(gè)元素賦值。從 0 到 10,將數(shù)據(jù)賦給數(shù)組的元素,如下所示:
A(0) = 256
A(1) = 324
A(2) = 100
. . .
A(10) = 55
與此類似,使用索引可以檢索到所需的數(shù)組元素的數(shù)據(jù)。例如:
. . .
SomeVariable = A(8)
. . .
數(shù)組并不僅限于一維。數(shù)組的維數(shù)可以為 60(盡管大多數(shù)人不能理解超過(guò) 3 或 4 的維數(shù))。聲明多維數(shù)組時(shí)用逗號(hào)分隔括號(hào)中每個(gè)表示數(shù)組大小的數(shù)字。在下例中,MyTable 變量是一個(gè)有 6 行和 11 列的二維數(shù)組:
Dim MyTable(5, 10)
在二維數(shù)組中,括號(hào)中第一個(gè)數(shù)字表示行的數(shù)目,第二個(gè)數(shù)字表示列的數(shù)目。
也可以聲明動(dòng)態(tài)數(shù)組,即在運(yùn)行腳本時(shí)大小發(fā)生變化的數(shù)組。對(duì)數(shù)組的最初聲明使用 Dim 語(yǔ)句或 ReDim 語(yǔ)句。但是對(duì)于動(dòng)態(tài)數(shù)組,括號(hào)中不包含任何數(shù)字。例如:
Dim MyArray()
ReDim AnotherArray()
要使用動(dòng)態(tài)數(shù)組,必須隨后使用 ReDim 確定維數(shù)和每一維的大小。在下例中,ReDim 將動(dòng)態(tài)數(shù)組的初始大小設(shè)置為 25,而后面的 ReDim 語(yǔ)句將數(shù)組的大小重新調(diào)整為 30,同時(shí)使用 Preserve 關(guān)鍵字在重新調(diào)整大小時(shí)保留數(shù)組的內(nèi)容。
ReDim MyArray(25)
. . .
ReDim Preserve MyArray(30)
重新調(diào)整動(dòng)態(tài)數(shù)組大小的次數(shù)是沒(méi)有任何限制的,將數(shù)組的大小調(diào)小時(shí),將會(huì)丟失被刪除元素的數(shù)據(jù)。
Dim A(10)
雖然括號(hào)中顯示的數(shù)字是 10,但由于在 VBScript 中所有數(shù)組都是基于 0 的,所以這個(gè)數(shù)組實(shí)際上包含 11 個(gè)元素。在基于 0 的數(shù)組中,數(shù)組元素的數(shù)目總是括號(hào)中顯示的數(shù)目加 1。這種數(shù)組被稱為固定大小的數(shù)組。
在數(shù)組中使用索引為數(shù)組的每個(gè)元素賦值。從 0 到 10,將數(shù)據(jù)賦給數(shù)組的元素,如下所示:
A(0) = 256
A(1) = 324
A(2) = 100
. . .
A(10) = 55
與此類似,使用索引可以檢索到所需的數(shù)組元素的數(shù)據(jù)。例如:
. . .
SomeVariable = A(8)
. . .
數(shù)組并不僅限于一維。數(shù)組的維數(shù)可以為 60(盡管大多數(shù)人不能理解超過(guò) 3 或 4 的維數(shù))。聲明多維數(shù)組時(shí)用逗號(hào)分隔括號(hào)中每個(gè)表示數(shù)組大小的數(shù)字。在下例中,MyTable 變量是一個(gè)有 6 行和 11 列的二維數(shù)組:
Dim MyTable(5, 10)
在二維數(shù)組中,括號(hào)中第一個(gè)數(shù)字表示行的數(shù)目,第二個(gè)數(shù)字表示列的數(shù)目。
也可以聲明動(dòng)態(tài)數(shù)組,即在運(yùn)行腳本時(shí)大小發(fā)生變化的數(shù)組。對(duì)數(shù)組的最初聲明使用 Dim 語(yǔ)句或 ReDim 語(yǔ)句。但是對(duì)于動(dòng)態(tài)數(shù)組,括號(hào)中不包含任何數(shù)字。例如:
Dim MyArray()
ReDim AnotherArray()
要使用動(dòng)態(tài)數(shù)組,必須隨后使用 ReDim 確定維數(shù)和每一維的大小。在下例中,ReDim 將動(dòng)態(tài)數(shù)組的初始大小設(shè)置為 25,而后面的 ReDim 語(yǔ)句將數(shù)組的大小重新調(diào)整為 30,同時(shí)使用 Preserve 關(guān)鍵字在重新調(diào)整大小時(shí)保留數(shù)組的內(nèi)容。
ReDim MyArray(25)
. . .
ReDim Preserve MyArray(30)
重新調(diào)整動(dòng)態(tài)數(shù)組大小的次數(shù)是沒(méi)有任何限制的,將數(shù)組的大小調(diào)小時(shí),將會(huì)丟失被刪除元素的數(shù)據(jù)。

