多数情况下,只需为声明的变量赋一个值。只包含一个值的变量被称为标量变量。有时候,将多个相关值赋给一个变量更为方便,因此可以创建包含一系列值的变量,称为数组变量。数组变量和标量变量是以相同的方式声明的,唯一的区别是声明数组变量时变量名后面带有括号()。下例声明了一个包含11个元素的一维数组:
DimA(10)
虽然括号中显示的数字是10,但由于在VBScript中所有数组都是基于0的,所以这个数组实际上包含11个元素。在基于0的数组中,数组元素的数目总是括号中显示的数目加1。这种数组被称为固定大小的数组。
在数组中使用索引为数组的每个元素赋值。从0到10,将数据赋给数组的元素,如下所示:
A(0)=256
A(1)=324
A(2)=100
…
A(10)=55
与此类似,使用索引可以检索到所需的数组元素的数据。例如:
…
SomeVariable=A(8)
…
数组并不仅限于一维。数组的维数最大可以为60(尽管大多数人不能理解超过3或4的维数)。声明多维数组时用逗号分隔括号中每个表示数组大小的数字。在下例中,MyTable变量是一个有6行和11列的二维数组:
DimMyTable(5,10)
在二维数组中,括号中第一个数字表示行的数目,第二个数字表示列的数目。
也可以声明动态数组,即在运行脚本时大小发生变化的数组。对数组的最初声明使用Dim语句或ReDim语句。但是对于动态数组,括号中不包含任何数字。例如:
DimMyArray()
ReDimAnotherArray()
要使用动态数组,必须随后使用ReDim确定维数和每一维的大小。在下例中,ReDim将动态数组的初始大小设置为25,而后面的ReDim语句将数组的大小重新调整为30,同时使用Preserve关键字在重新调整大小时保留数组的内容。
ReDimMyArray(25)
…
ReDimPreserveMyArray(30)
重新调整动态数组大小的次数是没有任何限制的,将数组的大小调小时,将会丢失被删除元素的数据。->