2.4  VBScript常量

常量是具有一定含义的名称,用于代替数字或字符串,其值从不改变。此外,VBScript还定义了许多固有常量,这无疑大大方便了程序员的开发工作。

2.4.1  声明自定义常量

VBScript中,我们可以声明常量,用来代替数字、日期或者字符串等数值,常量的数值在脚本运行的过程中不能发生变化。常量声明的语法如下所示:

Const constname = expression

其中,constname是常量的名称,expression是常量的值。

对于脚本开发人员来说,常量是很有用的,例如,如果在我们的脚本中需要使用到π,我们往往会将其定义为一个常量,赋值为3.14:

Const PI = 3.14

如果需要更高的精度,那么,我们可以将其设置为3.1415927:

Const PI = 3.1415927

在使用常量的情况下,我们只需要修改常量声明这一条语句就可以了,若我们不使用常量,那么我们则不得不将页面中用到π的地方全部进行修改。在使用常量的情况下,将会提高脚本的可读性与易维护性。

在常量声明的前面,我们也可以加上PublicPrivate前缀来设置其作用域,设置方式和变量是一样的。缺省情况下,在过程中声明的常量具有过程级作用域,在过程外声明的常量具有脚本级作用域。

在常量命名的过程中,也需要遵循变量的命名规则,并且不能和变量名称、VBScript内部函数名称和用户自定义函数名称相同。而且,在声明的时候,变量的值必须是一个简单常量,而不能是带有操作符的表达式。

我们建议在命名常量的时候,也使用一个命名方法,将常量和变量区分开来,这样可以避免将常量和变量混淆,不至于在脚本中对常量重新赋值,我们可以将常量的所有字母大写,例如,PI,或者使用“con”作为常量的前缀,例如,conPi。将常量和变量区分开是一个良好的编程风格,避免在脚本开发中出现混乱。

使用Const语句创建名称具有一定含义的字符串型常量时,通常需要将字符串文字包含在两个引号(" ")之间。例如:

Const MyString = "这是一个字符串。"

这也区分字符串型常量和数值型常量的最明显的方法。另外,日期文字和时间文字应当包含在两个井号(#)之间。例如:

Const CutoffDate = #6-1-97#

2.4.2  使用固有常量

刚刚提到,VBScript还定义了固有常量,设计人员可以在程序中定义并直接引用这些常量。VBScript定义的常量包括颜色常量、比较常量、日期和时间常量、日期格式常量、DriveType常量、FileAttributes常量、文件输入/输出常量、MsgBox常量、SpecialFolder常量、字符串常量、Tristate常量、VarType常量等。

例如,VBScript的颜色常量包括8个常量,各常量的名称、值和描述见表2.1。为便函于编程人员参考,我们在表2.1中一并给出了VBScript其他固有常量的名称、值和描述。

2.1  VBScript的固有常量

颜色常数

常数

描述

vbBlack

&h00

黑色

vbRed

&hFF

红色

vbGreen

&hFF00

绿色

vbYellow

&hFFFF

黄色

vbBlue

&hFF0000

蓝色

vbMagenta

&hFF00FF

紫色

vbCyan

&hFFFF00

青色

vbWhite

&hFFFFFF

白色

比较常数

常数

描述

vbBinaryCompare

0

执行二进制比较。

vbTextCompare

1

执行文本比较。

vbDatabaseCompare

2

基于数据库所包含的信息,在数据库中进行比较。

日期和时间常数

常数

描述

vbSunday

1

星期日

vbMonday

2

星期一

vbTuesday

3

星期二

vbWednesday

4

星期三

vbThursday

5

星期四

vbFriday

6

星期五

vbSaturday

7

星期六

vbFirstJan1

1

使用包含11日的星期(默认)。

vbFirstFourDays

2

使用第一个至少包含新的年中四天的星期。

vbFirstFullWeek

3

使用某年的第一个整周。

vbUseSystem

0

使用计算机区域设置中的日期格式。

vbUseSystemDayOfWeek

0

由系统设置定义每周的第一天是星期几。

日期格式常数

常数

描述

vbGeneralDate

0

显示日期和/或时间。对于实数,显示日期和时间。如果没有小数部分,仅显示日期。如果没有整数部分,则仅显示时间。由系统设置决定日期和时间的显示。

vbLongDate

1

按计算机中区域设置指定的长日期格式显示日期。

vbShortDate

2

按计算机中区域设置指定的短日期格式显示日期。

vbLongTime

3

按计算机中区域设置指定的长时间格式显示时间。

vbShortTime

4

按计算机中区域设置指定的短时间格式显示时间。

DriveType常数

常数

描述

Unknown

0

无法确定驱动器类型。

Removable

1

可移动媒体驱动器,包括软盘驱动器和其他多种存储设备。

Fixed

2

固定(不可移动)媒体驱动器,包括所有硬盘驱动器(包括可移动的硬盘驱动器)。

Remote

3

网络驱动器,包括网络上任何位置的共享驱动器。

CDROM

4

CD-ROM驱动器,不区分只读和可读写的CD-ROM驱动器。

RAMDisk

5

RAM磁盘,在本地计算机中占用一块“随机存取内存”(RAM)虚拟为磁盘驱动器。

FileAttributes常数

常数

描述

Normal

0

普通文件。未设置属性。

ReadOnly

1

只读文件。

Hidden

2

隐藏文件。

System

4

系统文件。

Volume

8

磁盘驱动器卷标。

Directory

16

文件夹或目录。

Archive

32

上次备份后已更改的文件。

Alias

64

链接或快捷方式。

Compressed

128

压缩文件。

文件输入/输出常数

常数

描述

ForReading

1

以只读方式打开文件。不能向该文件写入内容。

ForWriting

2

以可读写方式打开文件。如果已存在同名的文件,则覆盖旧的文件。

ForAppending

8

打开文件并在文件末尾写入内容。

MsgBox常数

常数

描述

vbOKOnly

0

只显示确定按钮。

vbOKCancel

1

显示确定和取消按钮。

vbAbortRetryIgnore

2

显示终止、重试和忽略按钮。

vbYesNoCancel

3

显示是、否和取消按钮。

vbYesNo

4

显示是和否按钮。

vbRetryCancel

5

显示重试和取消按钮。

vbCritical

16

显示临界消息图标。

vbQuestion

32

显示警告询问图标。

vbExclamation

48

显示警告消息图标。

vbInformation

64

显示提示消息图标。

vbDefaultButton1

0

第一个按钮是默认按钮。

vbDefaultButton2

256

第二个按钮是默认按钮。

vbDefaultButton3

512

第三个按钮是默认按钮。

vbDefaultButton4

768

第四个按钮是默认按钮。

vbApplicationModal

0

应用程序模式。用户必须响应消息框,才能继续在当前应用程序中工作。

vbSystemModal

4096

系统模式。用户响应消息框前,挂起所有应用程序。

下列常数与MsgBox函数一起使用,标识用户选定的按钮

常数

描述

vbOK

1

确定按钮被单击。

vbCancel

2

取消按钮被单击。

vbAbort

3

终止按钮被单击。

vbRetry

4

重试按钮被单击。

vbIgnore

5

忽略按钮被单击。

vbYes

6

是按钮被单击。

vbNo

7

否按钮被单击。

SpecialFolder常数

常数

描述

WindowsFolder

0

Windows文件夹,包含由Windows系统安装的文件。

SystemFolder

1

System文件夹,包含库、字体和设备驱动程序文件。

TemporaryFolder

2

Temp文件夹,用于保存临时文件。可在TMP环境变量中找到该文件夹的路径。

字符串常数

常数

描述

vbCr

Chr(13)

回车符

vbCrLf

Chr(13) & Chr(10)

回车符与换行符

vbFormFeed

Chr(12)

换页符;在MicrosoftWindows中不适用

vbLf

Chr(10)

换行符

vbNewLine

Chr(13) & Chr(10)

Chr(10)

平台指定的新行字符;适用于任何平台

vbNullChar

Chr(0)

值为0的字符

vbNullString

值为0的字符串

与零长度字符串("")不同;用于调用外部过程

vbTab

Chr(9)

水平附签

vbVerticalTab

Chr(11)

垂直附签;在MicrosoftWindows中不适用

Tristate常数

常数

描述

TristateTrue

-1

True

TristateFalse

0

False

TristateUseDefault

-2

使用默认设置

VarType常数

 

 

常数

描述

vbEmpty

0

未初始化(默认)

vbNull

1

不包含任何有效数据

vbInteger

2

整型子类型

vbLong

3

长整型子类型

vbSingle

4

单精度子类型

vbDouble

5

双精度子类型

vbCurrency

6

货币子类型

vbDate

7

日期子类型

vbString

8

字符串子类型

vbObject

9

对象

vbError

10

错误子类型

vbBoolean

11

Boolean子类型

vbVariant

12

Variant(仅用于变量数组)

vbDataObject

13

数据访问对象

vbDecimal

14

十进制子类型

vbByte

17

字节子类型

vbArray

8192

数组

其他常数

常数

描述

vbObjectError

&h80040000

自定义错误号应大于该值,例如,Err.Raise Number = vbObjectError + 1000

 


第一章第二章第三章第四章第五章