什么是变量名?

变量是引用计算机内存地址的一个方便的占位符,它可以存储在脚本运行时可以更改的程序信息。例如,您可以创建一个名为ClickCount的变量来存储用户单击网页上某个对象的次数。你不需要知道变量在计算机内存中的地址就可以使用这个变量。您可以通过引用变量名来查看或更改变量值。VBScript中只有一种基本数据类型,即Variant,所以所有变量的数据类型都是Variant。

声明变量

声明变量的一种方法是使用Dim语句、Public语句和Private语句在脚本中显式声明变量。例如:

华氏昏暗度

声明多个变量时,使用逗号分隔变量。例如:

顶部、底部、左侧、右侧变暗

另一种方法是通过在脚本中直接使用变量名来隐式声明变量。这通常不是一个好习惯,因为有时会因为变量名拼错而导致运行脚本时出现意想不到的结果。因此,最好使用Option Explicit语句将所有变量显式声明为脚本的第一条语句。

赋名规则

变量命名必须遵循VBScript的标准命名规则。变量命名必须遵循:

第一个字符必须是字母。

不能包含嵌入的句点。

长度不能超过255个字符。

在声明的范围内必须是唯一的。

变量的范围和生存期

变量的作用域由它的声明位置决定。如果变量是在过程中声明的,则只有过程中的代码可以访问或更改变量的值。此时,该变量具有局部范围,称为过程级变量。如果变量是在过程之外声明的,它可以被脚本中的所有过程识别,它被称为具有脚本级范围的脚本级变量。

变量存在的时间称为生存期。脚本级变量的生命周期从声明它们的时刻开始,直到脚本运行结束。对于流程级变量来说,其生存期只是流程运行的时间,流程结束后,变量就消失了。执行过程时,局部变量是理想的临时存储空间。具有相同名称的局部变量可以在不同的过程中使用,因为每个局部变量只能被声明它的过程识别。

给变量赋值

创建以下形式的表达式来为变量赋值:变量在表达式的左侧,要赋值的值在表达式的右侧。例如:

B = 200

标量变量和数组变量

在大多数情况下,您只需要给声明的变量赋值。只包含一个值的变量称为标量变量。有时将多个相关值赋给一个变量会更方便,因此您可以创建一个包含一系列值的变量,称为数组变量。数组变量和标量变量的声明方式相同,唯一的区别是变量名用括号()声明。下面的示例声明了一个包含11个元素的一维数组:

Dim A(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列的二维数组:

Dim MyTable(5,10)

在二维数组中,括号中的第一个数字表示行数,第二个数字表示列数。

还可以声明动态数组,即在运行脚本时大小会改变的数组。对数组的初始声明使用Dim语句或ReDim语句。但是对于动态数组,括号中不包含任何数字。例如:

迪姆缅甸()

ReDim AnotherArray()

要使用动态数组,必须使用ReDim来确定维度和每个维度的大小。在下面的示例中,ReDim将动态数组的初始大小设置为25,随后的ReDim语句将数组的大小调整为30,同时使用Preserve关键字在调整大小时保留数组的内容。

雷迪姆·缅甸(25岁)

。。。

ReDim Preserve MyArray(30)

您可以调整动态数组的大小,但需要注意的是,如果您调整了数组的大小,您将丢失已删除元素的数据。