340 likes | 521 Views
第 2 单元 VBScript 编程基础. 内容提要. VBScript 的全称是 Microsoft Visual Basic Scripting Edition ,它是专业编程语言 Visual Basic 的子集。 VBScript 编程是 ASP 的基础,本章主要介绍 VBScript 的基本语法以及 VBScript 的一些重要的函数的使用。. 脚本语言概述.
E N D
内容提要 • VBScript的全称是Microsoft Visual Basic Scripting Edition,它是专业编程语言Visual Basic的子集。 • VBScript编程是ASP的基础,本章主要介绍VBScript的基本语法以及VBScript的一些重要的函数的使用。
脚本语言概述 • 在网页编程中,常用脚本语言有3种:JavaScript、VBScript和Jscirpt。ASP并不是脚本语言,ASP需要使用脚本语言才能工作。在ASP程序中常用的脚本语言有VBScript和JScript。系统默认的语言为VBScript语言,可以通过IIS的选项将默认的语言设置为JScirpt脚本语言。 • VBScript与Visual Basic语言有密切关系。如果熟悉Visual Basic,将会发现VBScript很容易学习和使用。VBScript可以认为是Microsoft Visual Basic的简化版本。
VBScript基本语法 • VBScript是一种脚本语言,脚本语言的语法比较简单。 • 可以在HTML文件中直接嵌入VBScript脚本,从而能够扩展HTML语言。
VBScript代码的基本格式 • 在HTML页面中使用VBScript的基本格式为: • <Script Language="VBScript"> • </Script> • 在<Script Language="VBScript">和</Script>之间写VBScript代码,其中language="VBScript"可以简写为:language="VBS"。
VBScript的数据类型 • VBScript 只有一种数据类型,称为Variant,也叫做变体类型。Variant类型可以在不同的场合代表不同的数据类型。 • 例如Variant类型用于数字时,将作为数值处理;用于字符串时,将作为字符串处理。声明Variant变量使用 Dim 语句,例如: • Dim V1 • 声明多个变量时,使用逗号分隔变量。例如: • Dim Top, Bottom, Left, Right
VBScript常量 • 常数是具有一定含义的名称,用于代替数字或字符串,它的值从不改变。可以使用 Const 语句在 VBScript 中创建用户自定义常数。使用 Const 语句可以创建名称具有一定含义的字符串型或数值型常数,并给它们赋值。例如: • Const MyString = "这是一个字符串。" • Const MyAge = 49
VBScript变量 • 除了使用Dim定义变量以外,还有一种方式是直接在Script 中使用变量,不用使用Dim语句进行定义。 • 为了强制数据必须声明,使用Option Explicit语句,并将其作为 Script 的第一条语句。使用方法如程序3-03.htm所示。
命名规则 • 遵循 VBScript 的标准命名规则,变量命名必须遵循: • 第一个字符必须是字母 • 不能包含嵌入的句点 • 长度不能超过 255 个字符 • 在被声明的作用域内必须唯一
命名规则 • 通过变量的名称就能知道该变量的子类型
数组 • 有时候需要创建包含一系列值的变量,称为数组变量。数组变量和一般变量是以相同的方式声明的,唯一的区别是声明数组变量时变量名后面带有括号()。比如声明了一个包含11个元素的一维数组: • Dim A(10)
使用动态数组 • 重新调整动态数组大小的次数是没有任何限制的,但是应注意:将数组调小时,将会丢失被删除元素的数据。 • 使用方法如程序3-05.htm所示。
常用的运算符 • VBScript 有一套完整的运算符,包括算术运算符、比较运算符、连接运算符和逻辑运算符。 • 1、算术运算符 • 算术运算符就是日常的数学运算,如加(+)、减(-)、乘(*)、除(/)、整除(\)、取模(Mod)和指数(^)。 • 2、连接运算符 • 连接运算符是将两个字符表达式连接起来,生成一个新的字符串。连接运算符有“+”和“&”。 • 3、关系运算符 • 关系运算符用来比较两个表达式的值的大小,如大于(>)、小于(<)、大于等于(>=)、小于等于(<=)、不等于(<>)和等于(=)。 • 关系运算符的结果是逻辑型值True或者False,关系运算符可以用于数值间的比较,页可以用于字符串间的比较。当用作字符串间比较的时候,将按照ASCII码值进行比较。 • 4、逻辑运算符 • 逻辑运算符通常称为布尔运算符,专门用于逻辑值之间的运算。 • 5、运算符的优先顺序 • 当一个表达式包含有多个运算符的时候,执行运算的符号有一个固定的计算顺序,为:算术运算符> 连接运算符> 关系运算符> 逻辑运算符。
VBScript的基本语句 • 计算机语言有三种基本的结构:顺序结构,分支结构和循环结构。 • 任何的算法都可以通过这三种结构实现。
分支语句 • VBScirpt提供了两种分支语句,If...Then...Else 语句 和Select Case 语句 • 1. If … Then … Else语句 • 2. Select Case 语句
循环语句 • 循环用于重复执行一组语句。循环可分为三类:一类在条件变为 False 之前重复执行语句,一类在条件变为 True 之前重复执行语句,另一类按照指定的次数重复执行语句。在 VBScript 中可使用4种格式的循环语句。 • Do...Loop: 当(或直到)条件为 True 时循环。 • While...Wend: 当条件为 True 时循环。 • For...Next: 指定循环次数,使用计数器重复运行语句。 • For Each...Next: 对于集合中的每项或数组中的每个元素,重复执行。
VBScript的过程和函数 • 在 VBScript 中,可调用的程序段被分为两类: • Sub 过程和 Function 函数。
Sub过程 • Sub 过程是包含在 Sub 和 End Sub 语句之间的一组 VBScript 语句,Sub过程不可以有返回值。Sub 过程可以有输入参数,如果 Sub 过程无任何参数,则必须包含空括号 ()。其语法结构为: • Sub 子程序(参数1,参数2,…) • … • End Sub
Sub过程 • 定义一个Sub过程后,就可以在程序代码中调用它。Sub过程的调用有两种方式。一种是使用Call语句,它要求将所有参数包含在括号之中,语法结构为: • Call Sub过程名(参数1, 参数2,…) • 在使用的时候,Call关键字可以省略。另一种是直接使用子过程名,只需要输入过程名及其所有参数值,参数值之间使用括号分隔,语法结构为: • Sub过程名 参数1, 参数2,…
Function函数 • Function函数是包含在 Function 和 End Function 语句之间的一组 VBScript 语句。Function 函数与 Sub 过程类似,但是 Function 函数可以返回值,Sub过程不能有返回值。 • Function 函数可以使用输入参数。如果 Function 过程无任何参数,则 Function 语句必须包含空括号 。
注释语句 • 注释语句不被执行,也不会显示在页面上,只是为了帮助自己和别人阅读源程序。 • VBScript有两种注释方式:1、使用Rem语句;2、使用符号“'”。使用Rem语句的基本语法是: • Rem 注释语句
容错语句 • 一般来说,当程序发生错误的时候,程序会终止运行,并在页面上显示错误信息。有时候,不希望程序终止,也不希望把程序错误暴露给访问者,这就需要使用容错语句。基本语法格式为: • On Error Resume Next • 如果碰到错误,就跳过去继续执行下一句。
VBScript重要函数分析 • 除了可以使用自己编写的函数以外,系统还提供了许多重要的函数,这些函数可以在程序中直接使用。 • 可以将VBScript函数分成5大类:1、字符串处理函数;2、转换函数;3、日期和时间函数;4、数学函数;5、检验函数。在实际编写程序的时候,其他可以查阅VBScript语言参考。
小结 • VBScript是ASP的编程基础,本章需要重点理解VBScript的基本的语法,理解函数和过程的定义和调用的方法,掌握一些重要函数的用法。
本章习题 • 一、选择题 • 1. 下面关于VBScript的命名规则的说法不正确的是___________。 • A) 第一个字符必须是数字或字母。 B) 长度不能超过255个字符 • C) 名字不能和关键字同名 D) 在声明的时候不能声明两次 • 2. 使用___________语句可以立即从Sub过程中退出。 • A) Exit Sub B) Exit • C) </Sub> D) Loop • 3. 执行完strUser = "12345678"以后,strUser是___________类型。 • A) 整数变量 B) 字符串变量 • C) 布尔型变量 D) 单精度变量 • 4. 判断程序运行完毕后,x, y, z值分别为___________ • x = "11" + 1 • y = "11" & 1 • z = "11" + "1" • A) 111 111 111 B) 12 111 12 • C) 12 111 111 D) 12 12 12 • 5. 下列哪一个函数可以将数值型转换为字符串___________ • A) CDate B) CInt C) CStr D) CDbl • 6、语句“mid("1234567890", 3, 3)”的返回值是___________。 • A) 345 B) 234 C) 456 D) 7890
二、填空题 • 1. 在ASP程序中常用的脚本语言有VBScript和___________。 • 2. ___________是VBScript的输出语句,可以向浏览器发送字符串。 • 3. VBScript 只有一种数据类型,称为___________,也叫做变体类型。 • 4. 声明Variant变量使用___________语句。 • 5. 使用关键字___________在重新调整大小时保留原来数组的内容。 • 6. 在 VBScript 中,可调用的程序段被分为两类:___________和___________。 • 7. 在VBScript函数中,如果要返回一个值,给___________赋值。
三、简答题与程序设计题 • 1. 编写程序计算112+ 122+132+…+232的值。 • 2. 在个人主页上添加时间信息,并判断下午、晚上,上午和夜间,并分别给出问候:下午好、晚上好、上午好和夜里好。 • 3. 编写函数返回x和y的立方和,并举例调用。