VBScript 关键字(保留字)详解
VBScript 的关键字(Reserved Keywords) 是不能用作变量名、函数名、子程序名或常量的标识符。这些词具有特殊含义,由 VBScript 解释器保留使用。
以下是 VBScript 的完整保留关键字列表(不区分大小写),按类别整理,便于理解和记忆。
1. 声明与定义类
| 关键字 | 说明 |
|---|
| Dim | 声明变量 |
| Const | 声明常量 |
| Function | 定义函数 |
| Sub | 定义子程序 |
| Class | 定义类(较少用) |
| End Function | 函数结束 |
| End Sub | 子程序结束 |
| End Class | 类结束 |
| Private | 私有成员(类中) |
| Public | 公共成员(类中,默认) |
| ReDim | 重新定义数组尺寸 |
| Preserve | 与 ReDim 配合保留原有数组数据 |
| Option Explicit | 强制显式声明变量(推荐使用) |
2. 流程控制类
| 关键字 | 说明 |
|---|
| If | 条件判断开始 |
| Then | If 单行语句用 |
| Else | 否则分支 |
| ElseIf | 否则如果 |
| End If | If 语句结束 |
| Select | Select Case 开始 |
| Case | Case 分支 |
| End Select | Select Case 结束 |
| For | For 循环开始 |
| To | For 循环范围 |
| Step | For 循环步长 |
| Next | For 循环结束 |
| Each | For Each 循环用 |
| In | For Each 中集合 |
| Do | Do 循环开始 |
| Loop | Do 循环结束 |
| While | While 条件(Do While / Loop While) |
| Until | Until 条件(Do Until / Loop Until) |
| Wend | While…Wend 结束(已过时) |
| Exit | 提前退出(Exit For / Exit Do / Exit Sub / Exit Function) |
| With | With 语句(简化对象引用) |
| End With | With 语句结束 |
3. 逻辑与运算类
| 关键字 | 说明 |
|---|
| And | 逻辑与 |
| Or | 逻辑或 |
| Not | 逻辑非 |
| Xor | 逻辑异或 |
| Eqv | 逻辑等价(少用) |
| Imp | 逻辑蕴含(少用) |
| Mod | 取模运算 |
| Is | 对象比较(obj1 Is obj2) |
4. 错误处理类
| 关键字 | 说明 |
|---|
| On Error | 错误处理开启 |
| Resume | 错误恢复(Resume Next / Resume) |
| Err | 错误对象(内置) |
5. 其他重要关键字
| 关键字 | 说明 |
|---|
| Call | 调用子程序(可选) |
| Set | 对象赋值(必须用 Set) |
| New | 创建对象实例(Class 中) |
| Nothing | 释放对象引用 |
| Empty | 表示变量未初始化 |
| Null | 表示无效数据 |
| True / False | 布尔值 |
| ByVal | 参数按值传递 |
| ByRef | 参数按引用传递(默认) |
| Let | 赋值(可省略,已废弃) |
| Rem | 注释(同 ‘ ) |
6. 内置常量(虽不是严格关键字,但不能重定义)
| 常量 | 值 | 说明 |
|---|
| vbCrLf | | 回车换行 |
| vbCr | | 回车 |
| vbLf | | 换行 |
| vbTab | | Tab 键 |
| vbNullString | | 空字符串 |
| vbOK, vbCancel 等 | MsgBox 返回值 | 消息框按钮常量 |
| vbInformation 等 | | 消息框图标常量 |
注意事项
- 所有关键字不区分大小写(
dim、Dim、DIM 等价)。
- 不能用作标识符:例如不能声明变量名为
Dim x 或函数名为 If()。
- 建议始终在脚本开头使用
Option Explicit,避免误用类似关键字的拼写。
- 一些旧关键字(如
Let、Wend)虽仍支持,但已不推荐使用。
示例:错误示范(会报错)
Dim If = 10 ' 错误!If 是关键字
Dim End = "test" ' 错误!
Function For(x) ' 错误!
For = x + 1
End Function
示例:正确做法
Option Explicit
Dim myIf ' 可以用类似名称,但建议避免混淆
Dim counter
For counter = 1 To 10
MsgBox counter
Next
掌握这些关键字,能帮助你避免常见语法错误,并写出更规范的 VBScript 代码。如果你需要某个关键字的具体用法示例,也可以随时问我!