VBScript基础应用 (2).ppt
第3章 VBScript基础应用,3.1 VBScript数据类型 3.7 过程 3.2 VBScript变量 3.8 编码约定 3.3 VBScript常数 3.9 在Internet Explorer 中使用VBScript 3.4 VBScript运算符 3.5 使用条件语句 3.6 使用循环语句,3.1 VBScript数据类型,VBScript 只有一种数据类型,称为 Variant。Variant 是一种特殊的数据类型,根据使用的方式,它可以包含不同类别的信息。最简单的 Variant 可以包含数字或字符串信息。除简单数字或字符串以外,Variant 可以进一步区分数值信息的特定含义。可以使用转换函数来转换数据的子类型。另外,可使用 VarType 函数返回数据的 Variant 子类型。,3.2 VBScript变量,变量是一种使用方便的占位符,用于引用计算机内存地址,该地址可以存储 Script 运行时可更改的程序信息。在 VBScript 中只有一个基本数据类型,即 Variant,因此所有变量的数据类型都是 Variant。1.声明变量声明变量的一种方式是使用 Dim 语句、Public 语句和 Private 语句在 Script 中显式声明变量。2.命名规则变量命名必须遵循VBScript的标准命名规则:(1)第一个字符必须是字母。(2)不能包含嵌入的句点。(3)长度不能超过255个字符。(4)在被声明的作用域内必须惟一。3.变量的作用域与存活期变量的作用域由声明它的位置决定。变量存在的时间称为存活期。4.给变量赋值5.标量变量和数组变量多数情况下,只需为声明的变量赋一个值。只包含一个值的变量被称为标量变量。包含一系列值的变量,称为数组变量。数组变量和标量变量是以相同的方式声明的,惟一的区别是声明数组变量时变量名后面带有括号()。,3.3 VBScript常数,常数是具有一定含义的名称,用于代替数字或字符串,其值从不改变。可在程序代码的任何位置使用常数代替实际值。常数可以是字符串、数字、其他常数或任何除了 Is 和指数运算符之外的算术或逻辑运算符组成的混合算式。可以使用 Const 语句在 VBScript 中创建用户自定义常数。使用 Const 语句可以创建名称具有一定含义的字符串型或数值型常数,并给它们赋原义值。,3.4 VBScript运算符,VBScript有一套完整的运算符,包括算术运算符、比较运算符、连接运算符和逻辑运算符。当表达式包含多种运算符时,首先计算算术运算符,然后计算比较运算符,最后计算逻辑运算符。所有比较运算符的优先级相同,即按照从左到右的顺序计算比较运算符。,3.5 使用条件语句,使用条件语句可以控制 Script 的流程,可以编写进行判断和重复操作的 VBScript 代码。3.5.1 使用 If.Then.Else进行判断If.Then.Else 语句用于计算条件是否为 True 或 False,并且根据计算结果指定要运行的语句。1.条件为 True 时运行语句要在条件为 True 时运行单行语句,可使用 If.Then.Else 语句的单行语法。2.条件为 True 和 False 时分别运行某些语句可以使用 If.Then.Else 语句定义两个可执行语句块:条件为 True 时运行某一语句块,条件为 False 时运行另一语句块。3.对多个条件进行判断If.Then.Else 语句的一种变形允许用户从多个条件中选择,即添加 ElseIf 子句以扩充 If.Then.Else 语句的功能,使用户可以控制基于多种可能的程序流程。3.5.2 使用 Select Case 进行判断Select Case 结构提供了 If.Then.ElseIf 结构的一个变通形式,可以从多个语句块中选择执行其中的一个。,3.6 使用循环语句,循环用于重复执行一组语句。循环可分为三类:一类在条件变为 False 之前重复执行语句,一类在条件变为 True 之前重复执行语句,另一类按照指定的次数重复执行语句。3.6.1 使用Do循环可以使用 Do.Loop 语句多次(次数不定)运行语句块。当条件为 True 时或条件变为 True 之前,重复执行语句块。1.当条件为 True 时重复执行语句While 关键字用于检查Do.Loop 语句中的条件。有两种方式检查条件:在进入循环之前检查条件(如下面的 ChkFirstWhile 示例),或者在循环至少运行完一次之后检查条件(如下面的 ChkLastWhile 示例)。2.重复执行语句直到条件变为TrueUntil关键字用于检查 Do.Loop 语句中的条件。有两种方式检查条件:在进入循环之前检查条件(如下面的 ChkFirstUntil 示例);或者在循环至少运行完一次之后检查条件(如下面的 ChkLastUntil 示例)。3.退出循环Exit Do 语句用于退出 Do.Loop 循环。,3.6.2 使用While.WendWhile.Wend 语句是为那些熟悉其用法的用户提供的。3.6.3 使用For.NextFor.Next 语句用于将语句块运行指定的次数。在循环中使用计数器变量,该变量的值随每一次循环增加或减少。3.6.4 使用For Each.NextFor Each.Next 不是将语句运行指定的次数,而是对于数组中的每个元素或对象集合中的每一项重复一组语句。,3.7 过程,3.7.1 Sub过程Sub 过程是包含在 Sub 和 End Sub 语句之间的一组 VBScript 语句,执行操作但不返回值。Sub 过程可以使用参数(由调用过程传递的常数、变量或表达式)。如果 Sub 过程无任何参数,则 Sub 语句必须包含空括号()。3.7.2 Function 过程Function 过程是包含在 Function 和 End Function 语句之间的一组 VBScript 语句。Function 过程可以使用参数(由调用过程传递的常数、变量或表达式)。3.7.3 过程的数据进出给过程传递数据的途径是使用参数。参数被作为要传递给过程的数据的占位符。参数名可以是任何有效的变量名。使用 Sub 语句或 Function 语句创建过程时,过程名之后必须紧跟括号。括号中包含所有参数,参数间用逗号分隔。3.7.4 在代码中使用Sub和Function过程调用 Function 过程时,函数名必须用在变量赋值语句的右端或表达式中。,3.8 编码约定,编码约定是帮助用户使用 Microsoft Visual Basic Scripting Edition 编写代码的一些建议。编码约定包含以下内容:(1)对象、变量和过程的命名约定。(2)注释约定。(3)文本格式和缩进指南。3.8.1 常数命名约定VBScript 的早期版本不允许创建用户自定义常数。如果要使用常数,则常数以变量的方式实现,且全部字母大写以和其他变量区分。常数名中的多个单词用下划线(_)分隔。,3.8.2 变量命名约定在 VBScript 代码中使用如下表所示变量命名约定。,3.8.3 变量作用域变量应定义在尽量小的作用域中。VBScript 变量的作用域如下表所示。3.8.4 描述性变量名和过程名变量名或过程名的主体应使用大小写混合格式,并且尽量完整地描述其目的。另外,过程名应以动词开始。,3.8.5 对象命 名约定如右表所示列出了VBScript中可能用到的对象命名约定(推荐)。,3.8.6 代码注释约定所有过程的开始部分都应有描述其功能的简要注释。这些注释并不描述细节信息(如何实现功能),这是因为细节有时要频繁更改。这样就可以避免不必要的注释维护工作以及错误的注释。细节信息由代码本身及必要的内部注释来描述。3.8.7 格式化代码应尽可能多地保留屏幕空间,但仍允许用代码格式反映逻辑结构和嵌套。以下为几点提示:(1)标准嵌套块应缩进 4 个空格。(2)过程的概述注释应缩进 1 个空格。(3)概述注释后的最高层语句应缩进 4 个空格,每一层嵌套块再缩进 4 个空格。,3.9 在Internet Explorer中使用VBScript,使用Microsoft Internet Explorer 可以查看用以下 HTML 代码制作的页面。标记中的 Sub 过程是一个事件过程。过程名包含两部分:一部分为按钮名,即 Button1(从 标记中的 NAME 属性获取),另一部分为事件名,即 OnClick。两部分由下划线(_)连接。当 Internet Explorer 读取页面时,找到 标记,识别出 VBScript 代码并保存代码。Internet Explorer 在 Internet Explorer Scripting Object Model 文档中定义了可用于窗体控件的事件。页面也可以使用控件与过程的组合。VBScript与窗体显示了控件之间的一些简单交互作用。使用 Visual Basic Scripting Edition,用户可以完成通常要在服务器上进行的大量窗体处理工作,也可以完成不能在服务器上进行的工作。,小结,本章主要介绍了VBScript基础应用知识,通过本章的学习,使读者了解VBScript的数据类型、VBScript变量、常数以及运算符,掌握如何使用条件语句和循环语句,以及过程和编码约定等。,