资源预览内容
第1页 / 共165页
第2页 / 共165页
第3页 / 共165页
第4页 / 共165页
第5页 / 共165页
第6页 / 共165页
第7页 / 共165页
第8页 / 共165页
第9页 / 共165页
第10页 / 共165页
亲,该文档总共165页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第4章 在ASP中使用VBScript 本章要点:l Vbscript的常量、变量l Vbscript的控制转移和 循环l Vbscript中的过程l Vbscript的浏览器及Err 对象l VBScript事件处理和错 误调试技术 4.1 脚本语言4.1.1 什么是脚本语言 是介于HTML和Java、C+、Visual Basic之类的编程语言之间的语言。 主要用于格式化文本和使用以编程语 言编写的已编译好的组件。 可以用在 服务器端,也可以用在客 户端,用在服务器端时,需要安装脚本 引擎。常用的脚本语言: VBScript JavaScript PerlASP带有两个脚本引擎: Microsoft Visual Basic Scripting Edition (VBScript)缺省语言是VBScript ,当安装完Active Server Pages时,它就 已存在了。 同时安装的还有Microsoft JScript。 4.1.2 VBScript和JScript之间的区别 VBScript是Visual Basic 的子集,因为 VBScript是特意为在浏览器中进行工作 而设计的,它不包括一些在脚本这个范 围以外的特性,如文件访问和打印等等 。 JScript是Java语言的子集,没有Java复 杂。主要用于脚本编写的脚本语言。 JScript和VBScript的任务是相同的 都是用来编写Web网页的。每种语 言都支持一些别的语言不支持的特 性。 VBScript和JScript之间最大的区别就是 它们的结构。选择脚本类型时要考虑的因素: 选择脚本语言很多因素,比如:将要使 用的平台能否支持所使用的语言?所编 写的或要编写的是客户端应用还是服务 器端应用?如果是服务器端的,用户会 使用什么浏览器和服务器软件?1什么时候选择VBScript BScript主要是用在微软公司的各种平台 上。VBScript来可以应用在下面两种场 景: 服务器脚本。运行在web服务器端( 如在ASP网页中),这个服务器必须是 IIS。 客户端脚本。运行在客户的浏览器中 ,这个浏览器必须是IE。2什么时候选择Jscript所有的浏览器都支持JScript。因此, 如果为一个公共Web站点编写一个应 用程序,用JScript来编写客户端脚本 是很自然的选择。 如果想用JScript 来编写服务器脚本,那 么应该检查一下的服务器是否支持它 。微软公司的IIS允许你用JScript 来 编写ASP网页的脚本,但这并不是所 有的服务器都支持的。影响到你做决定的其它因素还有: 动态执行面向对象3区分大小写 JScript能够区分大写和小写。大小 写敏感。var A;var a;VBScript当然是不区分大写和小写 字母的。大小写不敏感。var A;var a; 4.1.3 在同一个网页中同时使用几种语言 在同一个网页中可以使用不同的脚本编 写语言,其原因是: (1)只是想在一个程序中利用某种语言 的优点,而脚本的其它部分还是用另外 一种语言来编写。 (2)所面对的现有的编码是用不熟悉的 语言来编写的。例如,设计时间控制是 用JScript编写的,而熟悉的语言却是 VBScript。 在大部分情况下,可以在同一个网页中 混合几种脚本语言并且它们相互之间能 够配合得很好。用一种语言编写的脚本 可以调用用另一种语言编写的程序并且 能够共享全局变量。1服务器脚本的执行顺序 一般情况下内联服务器脚本(在分隔符中的脚本)按顺序运行,从 头到尾。2脚本块的顺序 在把几种语言混合使用时, 块在网页中出现的顺序非常重要,有时 候会影响到它们是否能正常工作。看看 下面这个简单的例子,它是在一个内联 的VBScript脚本中调用一个用JScript编 写的函数: 调用一个Jscript函数 aNumber =2doubledNumber = doubleMe(aNumber) document.write(“答案:“ 4.1.4 设置主脚本语言 ASP主脚本语言是用来处理在分界 符 内部的命令的语言。默认 时,主脚本语言是VBScript,当然可以 将任何一种具有脚本引擎的脚本语言作 为主脚本语言,也可以逐页设置主脚本 语言,或在ASP应用程序中设置所有页 的主脚本语言。 1为某页设置语言 要设置单个页的主脚本语言,可将 指令添加到.asp 文件的开头。该指令的语法是: 其中Scripting Language就是所要设置的 页的主脚本语言。如果对某页进行了设 置,那么该页将忽略在应用程序中对所 有页的全局设置。2为应用程序设置语言 在应用程序中,如要为所有页设置主脚 本语言,可在Internet服务管理器的“应 用程序选项”选项卡上设置“默认的 ASP语言”属性。 3在服务器上使用VBScript和JScript 在服务端通过ASP使用VBScript时,由 于ASP脚本是在服务器端执行的,两个 VBScript特征将失效,即表示用户接口 的元素的VBScript语句InputBox和 MsgBox将不被支持。另外,在服务器 端的脚本中,请不要使用VBScript函数 CreateObject和GetObject,而要使用 Server.CreateObject,这样ASP就可以跟 踪对象实例了。用CreateObject或 GetObject创建的对象不能访问ASP内建 对象,也不能参与事务处理。4.2.1 VBScript 数据类型VBScript只有一种数据类型,称为 Variant。Variant是一种特殊的数据类 型,根据使用的方式,它可以包含不同 类别的信息。因为Variant是唯一的数 据类型,所以它也是VBScript中所有函 数的返回值的数据类型。4.2 VBScript基础 表4-1 Variant子类型 子类型 描 述 Empty 未初始化的Variant。对于数值变量, 值为0;对于字符串变量,值为零长 度字符串(“)。 Null 不包含任何有效数据的Variant Boolean 包含True或False Byte 包含0到255之间的整数 Integer 包含-32,768到32,767之间的整数 Currency -922,337,203,685,477.5808 到 922,337,203,685,477.5807 子类型 描 述 Long 包含 -2,147,483,648 到 2,147,483,647 之 间的整数 Single 包含单精度浮点数,负数范围从 - 3.402823E38 到 -1.401298E-45,正数范 围从 1.401298E-45 到 3.402823E38 Double 包含双精度浮点数,负数范围从- 1.79769313486232E308到- 4.94065645841247E-324,正数范围从 4.94065645841247E-324到 1.79769313486232E308 子类型 描 述 Date (time) 包含表示日期的数字,日期范围从 公元100年1月1日到公元9999年12 月31日。String 包含变长字符串,最大长度可为 20 亿个字符 Object 包含对象 Error 包含错误号 可以使用转换函数来转换数据的子类型 , 用VarType函数返回数据的Variant子类型。 4.2.2 变量 1声明变量 在VBScript中声明一个变量可以使用 Dim语句、Public语句和Private语句。 (1)Dim语句 Dim语句用来明确地声明变量。与 Visual Basic不同的是,它无需指明变量 的数据类型。因为VBScript中,只用一 种数据类型。 格式: Dim 变量名称例如: Dim DegreesFahrenheit声明多个变量时,使用逗号分隔变量。例 如: Dim Top, Bottom, Left, Right (2)Redim语句 Redim语句是专用来定义数组的。当需要 根据数据的增加和删除来扩大或缩小数 组的大小时,可通过Redim语句来实现 。 下面是一个扩大数组的简单格式: Dim datanum Redim Preserve datanum(20) Redim Preserve datanum(20)语句将数组的 元素扩大到20。 默认的情况下,使用Redim语句的同时会 清除数组中的所有值。而使用Preserve 关键字可以将所有现存的数据保存下来 ,并添加新的空白单元;如果缩小了数组的大小,那么被减去的单元中 的数据也会丢失。 3)Public关键字 Public关键字用于定义全局型变量。 格式: Public 变量名称 例如: Public a,b 和Dim语句一样,Public可以声明变量,并可以 一次声明多个变量,也可以声明一维或多维数 组。所不同的是Public关键字定义的变量是全 局变量。 (4)Private关键字Private关键字可以定义变量、一次定义多 个变量、定义一维或多维数组,不同的 只是变量的作用范围不同。下面列出了 使用上面语句或关键字定义的变量的可 能作用范围:l Dim、 Redim :整个脚本程序或过 程、函数中。l Public:整个脚本程序。l Private:过程或函数中。 (5)Option Explicit语句虽然可以不声明变量而直接使用, 但是,这通常不是一个好习惯,因为这 样有时会由于变量名被拼错而导致在运 行脚本时出现意外的结果。因此,最好 使用Option Explicit语句显式声明所 有变量,并将其作为脚本的第一条语句 。 这样,如果以后拼写错变量名, VBScript就会提醒你这个变量没有声明 ,而避免出现由于拼写错误所造成的问 题。 2命名规则 变量命名必须遵循VBScript的标准命名规 则。变量命名必须遵循: l 第一个字符必须是字母。 l 不能包含嵌入的句点。 l 长度不能超过255个字符。 l 在被声明的作用域内必须唯一。 3变量的作用域及存活期过程级变量:在过程中声明的变量。 则只有该过程中的代码可以访问或更 改变量值。具有过程级作用域Sub Sub1() dim var1 var1=2008 var1=var1+1 End Sub脚本级变量:在过程之外声明的变量。 则该变量可以被脚本中所有过程所识别 ,具有脚本级作用域。 dim var1 Sub Sub1() var1=2008 End Sub4给变量赋值给变量赋值很简单,创建如下形式的表 达式给变量赋值:变量在表达式左边, 要赋的值在表达式右边。例如: B = 2005标量变量和数组变量多数情况下,只需为声明的变量赋一个 值。只包含一个值的变量被称为标量变 量。有时候,将多个相关值赋给一个变 量更为方便,因此可以创建包含一系列 值的变量,称为数组变量。数组变量和 标量变量是以相同的方式声明的,唯一 的区别是声明数组变量时变量名后面带 有括号()。下例声明了一个包含11个 元素的一维数组: Dim A(10)虽然括号中显示的数字是10,但由于在 VBScript中所有数组都是基于0 的,所 以这个数组实际上包含11个元素。在基 于0的数组中,数组元素的数目总是括 号中显示的数目加1。这种数组被称为 固定大小的数组。在数组中使用索引为数组的每个元素赋 值。从0到10,将数据赋给数组的元素 ,如: A(0) = 256A(1) = 324A(2) = 100A(10) = 55 与此类似,使用索引可以检索到所需的数
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号