ASP程序设计讲课幻灯片03Chapter_第1页
ASP程序设计讲课幻灯片03Chapter_第2页
ASP程序设计讲课幻灯片03Chapter_第3页
ASP程序设计讲课幻灯片03Chapter_第4页
ASP程序设计讲课幻灯片03Chapter_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第3章章 vbscript编程基础编程基础内容提要nvbscript的全称是的全称是microsoft visual basic scripting edition,它是专业编,它是专业编程语言程语言visual basic的子集。的子集。nvbscript编程是编程是asp的基础,本章主要的基础,本章主要介绍介绍vbscript的基本语法以及的基本语法以及vbscript的一些重要的函数的使用。的一些重要的函数的使用。脚本语言概述 n在网页编程中,常用脚本语言有3种:javascript、vbscript和jscirpt。asp并不是脚本语言,asp需要使用脚本语言才能工作。在asp程序中

2、常用的脚本语言有vbscript和jscript。系统默认的语言为vbscript语言,可以通过iis的选项将默认的语言设置为jscirpt脚本语言。nvbscript与visual basic语言有密切关系。如果熟悉visual basic,将会发现vbscript很容易学习和使用。vbscript可以认为是microsoft visual basic的简化版本。vbscript基本语法 nvbscript是一种脚本语言,脚本语言的语法比较简单。n可以在html文件中直接嵌入vbscript脚本,从而能够扩展html语言。vbscript代码的基本格式 n在html页面中使用vbscript

3、的基本格式为:nnn在和之间写vbscript代码,其中language=vbscript可以简写为:language=vbs。 vbscript的数据类型 nvbscript 只有一种数据类型,称为variant,也叫做变体类型。variant类型可以在不同的场合代表不同的数据类型。n例如variant类型用于数字时,将作为数值处理;用于字符串时,将作为字符串处理。声明variant变量使用 dim 语句,例如: ndim v1n声明多个变量时,使用逗号分隔变量。例如: n dim top, bottom, left, right显示 variant 包含的数据子类型 子类型子类型描述描述e

4、mpty未初始化的未初始化的 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,

5、648 到到 2,147,483,647 之间的整数。之间的整数。single单精度浮点数单精度浮点数double包含双精度浮点包含双精度浮点date包含表示日期的数字包含表示日期的数字object包含对象包含对象error包含错误号包含错误号vbscript常量 n常数是具有一定含义的名称,用于代替数字或字符串,它的值从不改变。可以使用 const 语句在 vbscript 中创建用户自定义常数。使用 const 语句可以创建名称具有一定含义的字符串型或数值型常数,并给它们赋值。例如: nconst mystring = 这是一个字符串。nconst myage = 49vbscript变量

6、 n除了使用dim定义变量以外,还有一种方式是直接在script 中使用变量,不用使用dim语句进行定义。n为了强制数据必须声明,使用option explicit语句,并将其作为 script 的第一条语句。使用方法如程序3-03.htm所示。命名规则n遵循 vbscript 的标准命名规则,变量命名必须遵循: n第一个字符必须是字母n不能包含嵌入的句点n长度不能超过 255 个字符n在被声明的作用域内必须唯一命名规则n通过变量的名称就能知道该变量的子类型 子类型子类型前缀前缀例子例子子类型子类型前缀前缀例子例子integerintintagelonglnglngsumcurrencycur

7、cursalarysinglesngsngtotaldoubledbldbltotalbytebytbytrasterdatabooleanblnblnmarriedstringstrstrusernamedatedtdtstarttimeobjectobjobjcurrent 数组 n有时候需要创建包含一系列值的变量,称为数组变量。数组变量和一般变量是以相同的方式声明的,唯一的区别是声明数组变量时变量名后面带有括号()。比如声明了一个包含11个元素的一维数组: ndim a(10)使用动态数组使用动态数组 n重新调整动态数组大小的次数是没有任何限制的,但是应注意:将数组调小时,将会丢失被删除

8、元素的数据。 n使用方法如程序3-05.htm所示。 常用的运算符 nvbscript 有一套完整的运算符,包括算术运算符、比较运算符、连接运算符和逻辑运算符。n1、算术运算符n算术运算符就是日常的数学运算,如加(+)、减(-)、乘(*)、除(/)、整除()、取模(mod)和指数()。n2、连接运算符n连接运算符是将两个字符表达式连接起来,生成一个新的字符串。连接运算符有“+”和“&”。n3、关系运算符n关系运算符用来比较两个表达式的值的大小,如大于()、小于(=)、小于等于(=)、不等于()和等于(=)。n关系运算符的结果是逻辑型值true或者false,关系运算符可以用于数值间的比较,页可

9、以用于字符串间的比较。当用作字符串间比较的时候,将按照ascii码值进行比较。n4、逻辑运算符n逻辑运算符通常称为布尔运算符,专门用于逻辑值之间的运算。 n5、运算符的优先顺序n当一个表达式包含有多个运算符的时候,执行运算的符号有一个固定的计算顺序,为:算术运算符 连接运算符 关系运算符 逻辑运算符。 vbscript的基本语句 n计算机语言有三种基本的结构:顺序结构,分支结构和循环结构。n任何的算法都可以通过这三种结构实现。分支语句nvbscirpt提供了两种分支语句,if.then.else 语句 和select case 语句 n1. if then else语句n2. select c

10、ase 语句循环语句n循环用于重复执行一组语句。循环可分为三类:一类在条件变为 false 之前重复执行语句,一类在条件变为 true 之前重复执行语句,另一类按照指定的次数重复执行语句。在 vbscript 中可使用4种格式的循环语句。ndo.loop: 当(或直到)条件为 true 时循环。 nwhile.wend: 当条件为 true 时循环。 nfor.next: 指定循环次数,使用计数器重复运行语句。 nfor each.next: 对于集合中的每项或数组中的每个元素,重复执行。vbscript的过程和函数 n在 vbscript 中,可调用的程序段被分为两类:nsub 过程和 fu

11、nction 函数。 sub过程nsub 过程是包含在 sub 和 end sub 语句之间的一组 vbscript 语句,sub过程不可以有返回值。sub 过程可以有输入参数,如果 sub 过程无任何参数,则必须包含空括号 ()。其语法结构为:nsub 子程序(参数1,参数2,)nnend subsub过程n定义一个sub过程后,就可以在程序代码中调用它。sub过程的调用有两种方式。一种是使用call语句,它要求将所有参数包含在括号之中,语法结构为:ncall sub过程名(参数1, 参数2,)n在使用的时候,call关键字可以省略。另一种是直接使用子过程名,只需要输入过程名及其所有参数值,

12、参数值之间使用括号分隔,语法结构为:nsub过程名 参数1, 参数2,function函数 nfunction函数是包含在 function 和 end function 语句之间的一组 vbscript 语句。function 函数与 sub 过程类似,但是 function 函数可以返回值,sub过程不能有返回值。nfunction 函数可以使用输入参数。如果 function 过程无任何参数,则 function 语句必须包含空括号 。 注释语句 n注释语句不被执行,也不会显示在页面上,只是为了帮助自己和别人阅读源程序。nvbscript有两种注释方式:1、使用rem语句;2、使用符号“

13、”。使用rem语句的基本语法是:nrem 注释语句容错语句 n一般来说,当程序发生错误的时候,程序会终止运行,并在页面上显示错误信息。有时候,不希望程序终止,也不希望把程序错误暴露给访问者,这就需要使用容错语句。基本语法格式为:non error resume nextn如果碰到错误,就跳过去继续执行下一句。vbscript重要函数分析 n除了可以使用自己编写的函数以外,系统还提供了许多重要的函数,这些函数可以在程序中直接使用。n可以将vbscript函数分成5大类:1、字符串处理函数;2、转换函数;3、日期和时间函数;4、数学函数;5、检验函数。在实际编写程序的时候,其他可以查阅vbscri

14、pt语言参考。字符串处理函数 函数功能用法len(string)返回字符串string的长度比如:len(hello)返回5。trim(string)将字符串string前后的空格去掉比如:trim( hello )返回hello。mid(str, start, len)从字符串str的start位置取长度为len的子字符串比如:mid(vb script is fun!, 4, 6) 返回script。left(str, len)从左边取len个字符比如:left(hello, 3)返回hel。right(str, len)从右边取len个字符比如:right(hello, 3)返回llo。

15、instr(str1, str2)返回str2在str1中第一次出现的位置,两字符串相同返回0比如:instr(hello, ell)返回2split(str1, 符号)根据符号将str1拆分成一维数据比如:split(vbscriptxisxfun!, x)返回数据元素分别为:vbscript,is和fun。replace(str1, str2,str3)将str1中的str2全部换成str3比如:replace(vbvb, b , c)返回vcvc。转换函数 函数功能用法cstr(variant)将变量转换成字符型比如:cstr(1234)返回1234。cdate(variant)将变量转

16、换为日期型比如:cdate(2008-4-8)返回日期型的变量cint(variant)将变量转换为整数类型比如:cint(2008)返回整数2008clng(variant)将变量转换为长整数类型比如:clng(200800)返回长整型数csng(variant)将变量转换为single类型比如:csng(2008.8)返回single类型cdbl(variant)将变量转换为double类型比如:cdbl (2008.8)返回double类型cbool(variant)将变量转换为布尔型比如:cdbl (true)返回真值日期和时间函数 函数功能用法now()得到系统当前的日期和时间比如:

17、now()返回当前日期和时间date()得到系统的日期比如:date()返回 “年: 月: 日”time()得到系统的时间比如:time()返回“时: 分: 秒”year(date)取得date中的年比如:year(#2008-10-1#)返回2008month(date)取得date中的月比如:month(#2008-10-1#)返回10day(date)取得date中的日比如:day(#2008-10-1#)返回1hour(time)取得time中的小时比如:hour(#10:20:30#)返回10minute(time)取得time中的分钟比如:minute(#10:20:30#)返回2

18、0second(time)取得time中的秒比如:minute(#10:20:30#)返回30weekday(date)取得个定日期是星期几比如:如果是星期天返回1,如果是星期一返回2,以此类推。日期和时间函数datediff(str,d1,d2)计算两个日期d1和d2之间的间隔如果str是yyyy,则计算年间隔,是m计算月间隔,d计算日间隔,ww计算星期间隔,h代表小时间隔,s代表秒间隔。dateadd(str,d1,d2)返回d2加上d1,其中d1的单位根据str的不同而不同如果dateadd(yyyy,15,date()则返回15年以后的日期。如果yyyy变成d,则计算15天以后的日期。

19、formatdatetime()formatdatetime(d1, vbshortdate)将d1转化为短日期的形式formatdatetime(d1, vblongdate)将d1转化为长日期的形式formatdatetime(t1, vbshorttime)将t1转化为短时间的形式formatdatetime(t1, vblongtime)将t1转化为长时间的形式数学函数 函数功能用法abs(num)返回绝对值比如:abs(-1)的值为1sqr(num)返回一个数的平方根比如:sqr(4)的值为2sin(num)返回正弦值比如:sin(3.14159265)的值接近0cos(num)返回

20、余弦值比如:cos(3.14159265)的值为-1tan(num)返回正切值比如:tan(3.14159265)的值接近0atn(num)返回反正切值比如:atn(0)的值为0log(num)返回一个数的自然对数值比如:log(2)的值为0.693rnd()返回一个0到1之间的随机数比如:rnd()的值为0.7055475ubound(数组名, 维数)返回数组某维的最大下标如果只有一维可以省略维数lbound(数组名, 维数)返回数组某维的最小小标如果只有一维可以省略维数检验函数 函数功能用法vartype(variant)检查变量variant的值如果返回0表示空,2表示整数,7表示日期,

21、8表示字符串,11表示布尔变量,8192表示数组isnumeric(variant)检查是否为数字类型isnumeric(11)返回trueisdate(variant)检查是否为日期型isdate(date()返回trueisnull(variant)检查是否为null值isnull(null)返回trueisempty(variant)检查是否为空值isempty(empty)返回trueisarray(variant)检查是否未数组isarray(数组名)返回true小结nvbscript是asp的编程基础,本章需要重点理解vbscript的基本的语法,理解函数和过程的定义和调用的方法,掌握一些重要函数的用法。本章习题n一、选择题一、选择题n1. 下面关于下面关于vbscript的命名规则的说法不正确的是的命名规则的说法不正确的是_。na) 第一个字符必须是数字或字母。第一个字符必须是数字或字母。 b) 长度不能超过长度不能超过255个字符个字符nc) 名字不能和关键字同名名字不能和关键字同名 d) 在声明的时候不能声明两次在声明的时候不能声明两次n2. 使用使用_语句可以立即从语句可以立即从sub过程中退出。过程中退出。na) exit sub b) exi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论