《VBScript编程基础》PPT课件.ppt_第1页
《VBScript编程基础》PPT课件.ppt_第2页
《VBScript编程基础》PPT课件.ppt_第3页
《VBScript编程基础》PPT课件.ppt_第4页
《VBScript编程基础》PPT课件.ppt_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

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

文档简介

第3章VBScript基础知识,网络程序设计-ASP配套课件支持网站:,本章内容简介,3.1脚本语言概述,所谓脚本语言,就是一种介于HTML语言和VisualBasic、Java等高级语言之间的一种语言。在ASP程序中常用的脚本语言有VBScript和JavaScript等语言,系统的默认语言为VBScript语言。ASP可以通俗的说就是把脚本语言放在之间,一般在服务器端运行。,3.2VBScript代码的基本格式,在服务器端运行,有两种方式方法一:方法二:VBScript代码有时候也需要在客户端运行,语法如下:VBScript代码,3.3VBScript的数据类型,在VBScript,只有一种数据类型,称为Variant,也有叫做变体类型。Variant变量中保存的数据类型称为变量的子类型。常见的字类型有字符串、数字、日期、逻辑类型。Variable=2001VBScript会将它当成整数对待Variable=”2001”VBScript会将它当成字符串对待Variable=”北京大学”VBScript会将它当成字符串对待Variable=“2008-8-8”VBScript会将它当日期对待,3.4VBScript常量,3.4.1直接常量(常数)3.4.2符号常量,3.4.1直接常量(常数),直接常量也称为字面常量,指的是可以从字面形式上辨别出来的常量,其实就是我们通常说的常数。常量类型:两边加双引号()表示字符串常量。区别字符串常量和数字常量的标志就是看两边是否有双引号。比如100看起来是数字,但实际上是字符串常量。如果发生引号嵌套,就将内层引号替换为单引号()或连续两个双引号(),比如abcdef或abcdef。不过,内层如果是中文引号则不必替换。两边加#号表示日期或时间常量。,3.4.2符号常量,所谓符号常量,指的是用一个具有一定含义的直观的名字来代表一个数值、字符串或日期等常数。分类:自定义常量声明使用Const语句,语法如下:ConstPI=3.1415926表示数值型常量ConstconCountry=中国两边加表示字符串型常量ConstconBirthday=#1990-9-9#两边加#表示日期或时间常量内置符号常量如:,vbLongDate就表示以长日期格式显示,3.5VBScript变量,3.5.1变量的命名规则3.5.2变量的声明、赋值和引用3.5.3强制声明变量3.5.4变量的作用范围和有效期,变量,所谓变量,就是在程序运行过程中,其值可以被改变的量。严格说来,变量代表内存中具有特定属性的一个存储单元,它用来存放数据,也就是变量的值。为了方便引用,我们可以给这个存储单元定义一个名字,这就是变量的名称。变量与常量非常类似,只不过常量一经声明其值就不能改变了,而变量在声明后仍可随时对其值进行修改。,3.5.1变量的命名规则,在VBScript中,变量的命名规则如下:(1)变量名必须以字母开头;(2)可以使用字母、数字和下划线,但不能使用任何标点符号;(3)长度不能超过255个字符;(4)不能使用VBScript的关键字,所谓关键字,就是Const、Dim、Sub、End等在语法中使用的一些特殊字符串。,3.5.2变量的声明、赋值和引用,声明(定义)变量可以使用Dim语句如:DimintA声明一个变量intA变量的赋值也与许多高级语言相同,变量放在等号的左边,赋值语句放在等号的右边,赋值语句可以是一个常量(常数),也可以是一个表达式。如:intA=10+20*3变量的引用和常量类似,可以将变量直接赋值给另外一个变量,也可以将变量引用到表达式中。DimintA,intB,intC声明3个变量intA=5给变量intA赋值intB=5给变量intB赋值intC=intA+intB引用变量intA和intB,将两者之和赋给变量intC,3.5.3强制声明变量,如果希望强制要求所有的变量必须先声明才能使用,则可以在ASP文件中所有的脚本语句之前添加OptionExplicit语句,用法如下:添加了OptionExplicit语句后,如果使用变量前没有预先声明,调试程序时就会报错。,3.5.4变量的作用范围和有效期,作用范围也称作用域,表示在什么空间范围内可以使用该变量。在VBScript中,变量的作用范围是由变量的声明位置决定的。过程级变量:在一个过程内声明的变量,则只有在这个过程中的代码才可以使用该变量。脚本级变量:在所有过程之外声明的变量,则该文件中的所有代码均可以使用该变量。有效期也称存活期,表示变量在什么时间范围内可以使用该变量。过程级变量的有效期就是该过程的运行时间,过程结束后,变量就随即消失了;脚本级变量的有效期就是从它被声明那一刻到整个代码的结束。,3.6VBScript数组,3.6.1数组的命名、声明、赋值和引用3.6.2多维数组3.6.3变长数组,数组,数组代表内存中具有特定属性的若干连续的存储单元,每个单元都可以用来存放数据,根据单元的索引(也称下标)就可以访问特定的存储单元。,3.6.1数组的命名、声明、赋值和引用,数组的命名、声明、赋值和引用与上一节讲的变量基本上是一样的,所不同的是要声明数组中的元素数(也就是长度)。如:DimintA(2)声明一个元素数为3的数组intA(0)=1给第1个数组元素变量赋值intA(1)=2给第2个数组元素变量赋值intA(2)=3给第3个数组元素变量赋值VBScript数组索引从0开始计数。,3.6.2多维数组,多维数组的引用和赋值和一维数组是一样的,只不过括号中的第1个数字表示所在行,第2个数字表示所在列。举例:声明一个3行4列的二维数组DimintA(2,3)声明一个3行4列的二维数组下面是该二维数组的结构示意图:,3.6.3变长数组,变长数组又称为动态数组,意思是声明数组时可以不确定数组元素个数,以后根据需要再确定。声明变长数组的语法如下:DimintA(),声明方法和定长数组类似,只是在括号中不指名数组长度而已。当需要使用的时候,可以用Redim语句重新声明该数组。如:RedimintA(3)重声明数组,长度为4Redim数组后,原有的数值就全部清空了。如果希望保留原有元素的数值,在Redim语句中需要添加Preserve参数,例如:,3.7VBScript运算符和表达式,3.7.1算术运算符和数学表达式3.7.2连接运算符和字符串表达式3.7.3比较运算符和条件表达式3.7.4逻辑运算符3.7.5混合表达式中的优先级,VBScript运算符和表达式总述,VBScript继承了VB的所有类别的运算符,包括算术运算符、连接运算符、比较运算符和逻辑运算符要注意运算顺序,先计算算术运算符,其次连接运算符,再次比较运算符,最后计算逻辑运算符。VBScript主要包含三种不同的表达式:数学表达式(如3+5*7)、字符串表达式(如ab&cd)和条件表达式(如53),3.7.1算术运算符和数学表达式,算术运算符和数学表达式主要用于常规的数学运算。双目运算符如:intResult=intA2+intB2求两个变量的平方和单目运算符intResult=-5求负数,结果为-5算术运算符在实际运算中是有优先顺序的,依次为、-(求负)、*和/、Mod、+和-。当然,大家也可以使用括号任意改变运算顺序。大部分运算符两边不需要留空格,但是少数容易混淆的运算符两边必须留空格,如Mod。,3.7.2连接运算符和字符串表达式,连接运算符和字符串表达式主要用于将若干个字符串连接成一个长的字符串。&运算符表示强制连接,不管两边的操作数是字符串、数值、日期还是布尔值,它都会把它们自动转化为字符串然后连接到一起如:strResult=ab&cd“结果为abcd“+运算符也可以用于连接字符串,但只有两个操作数都是字符串时才执行连接运算;如果有一个操作数是数值、日期或者布尔值,就执行相加运算。此时,如果有一个操作数无法转换成可以相加的类型,就会出错。,3.7.3比较运算符和条件表达式,常用的比较运算符包括=、=和3对两个数字进行比较,结果为TrueblnResult=#2008-1-1#2008-8-8#对两个日期进行比较,结果为True比较运算符在实际运算中是没有优先顺序的,按从左到右的顺序进行。,3.7.4逻辑运算符,逻辑运算符是对两个布尔值(True或False)或两个比较表达式进行一系列的逻辑运算,然后再返回一个布尔值结果。常用的逻辑运算符有And(逻辑与)、Or(逻辑或)和Not(逻辑非),运算规则如下:(1)And表示并且,只有两个操作数都是True的时候,结果才为True,否则为False;(2)Or表示或者,只要两个操作数中有一个是True,结果就为True,否则为False;(3)Not表示求反,它是单目运算符,只要一个操作数,当操作数是True的时候,结果为False,当操作数为False时,结果为True。还有其他几个不太常用的逻辑运算符:Xor、Eqv、Imp,3.7.5混合表达式中的优先级,所谓混合表达式,指的是一个表达式中包含了多类运算符,此时运算顺序稍微有些复杂,需要先计算算术运算符,其次连接运算符,再次比较运算符,最后计算逻辑运算符。不过,建议大家没有必要去记这些顺序,在编程时可以充分利用括号“()”来改变运算顺序,最后达到自己的要求。,3.8VBScript函数,3.8.1数学函数3.8.2字符串函数3.8.3日期和时间函数3.8.4数组函数3.8.5格式化函数3.8.6转换函数3.8.7检验函数,VBScript函数,所谓函数,指的是由若干语句组成的程序模块,它可以实现一个特定的功能,并返回一个函数值。函数分类:内部函数即系统函数,如Time().自定义函数:为了实现某个特定功能,自己编写的程序模块。使用函数时要特别注意函数参数的个数和类型。,3.8.1数学函数,数学函数包括取整函数、随机函数、绝对值函数、三角函数和指数函数等,它们的参数和返回的函数值一般都是数值。常用的数学函数:Int(number)Round(number,decimal)Rnd(),3.8.2字符串函数,字符串函数可以实现对字符串进行截头去尾、大小写替换等操作。常用字符串函数:Len(string)LCase(string)、UCase(string)Trim(string)、Ltrim(string)、Rtrim(string)Mid(string,start,length)、Left(string,length)、Right(string,length)Replace(string,find,replacewith)InStr(string1,string2),3.8.3日期和时间函数,使用日期和时间函数来得到各种格式的日期和时间常用日期和时间函数:Now()、Date()、Time()Year(date)、Month(date)、Day(date)Hour(time)、Minute(time)、Second(time)WeekDay(date)DateAdd(interval,number,date)DateDiff(interval,date1,date2),3.8.4数组函数,常用数组函数:UBound(arrayname,dimension)Split(string,delimiter)Join(arrayname,delimiter)Array(arglist),3.8.5格式化函数,需要将数值或日期按指定的格式显示,此时就需要用到格式化函数。常用的格式化函数:FormatNumber(number,decimal):返回格式化后的数值。如:FormatNumber(3.1415926,3),返回3.141FormatDateTime(Date,namedFormat):返回格式化后的日期和时间字符串。如:FormatDateTime(#2008-9-2812:39:32#,1),返回2008年9月28日,3.8.6转换函数,VBScript会自动转换数据子类型以满足计算的需求,但有时候,也需要使用转换函数来强制转换数据子类型。常用的转换函数:CStr(variant):转化为字符串子类型CInt(variant):转化为整数子类型CDate(variant):转化为日期子类型,3.8.7检验函数,很多时候需要判断一个变量究竟是什么数据子类型,此时就需要用到检验函数。常用的检验函数IsNumeric(variant):如果可以转换为数值,则返回TrueIsDate(variant):如果可以转换为日期,则返回TrueIsArray(variant):如果是数组,则返回TrueIsNull(variant):如果不包含任何有效数据,则返回True,3.9VBScript过程,3.9.1Sub子程序3.9.2Function函数3.9.3子程序和函数的位置,VBScript过程,利用前面讲的函数可以方便地完成某些功能,但是有时需要完成一些特殊的功能,此时没有现成的函数可用,就需要利用过程自己编制来函数。在VBScript中,过程有两种,一种是Sub子程序,一种是Function函数。两者的区别在于:Sub子程序只执行程序而不返回值,而Function函数执行程序后会返回值。,3.9.1Sub子程序,Sub子程序的语法如下:Sub子程序名(形式参数1,形式参数2,)EndSub调用子程序的两种方式:(1)Call子程序名(实际参数1,实际参数2,)(2)子程序名实际参数1,实际参数2,,子程序示例,源文件,显示结果,3.9.2Function函数,Function函数的语法如下:Function函数名(形式参数1,形式参数2,)EndFunction调用函数变量=Function函数名(参数1,参数2,)函数可以向变量一样引用和参与运算,Function函数和Sub子程比较,Function函数和Sub子程序类似,也是利用实参和形参一一对应传递数据。如果Function函数无参数,也必须使用空括号。与Sub过程不同的是,Function过程通过函数名返回一个值,这个值是在过程的语句中赋给函数名的。,Function函数示例,运行结果同前面的子程序示例,子程序和函数的位置,子程序和函数可以放在ASP文件的任意位置中,也可以放在另外一个ASP文件中,当使用时,可以利用语句,包含该函数文件即可。改写上一个函数示例为两个文件,其中示例3-7是主程序,用来调用函数,而示例3-8专门用来保存函数。,3.10使用条件语句,3.10.1IfThenElse语句3.10.2SelectCase语句,3.10.1IfThenElse语句,IfThenElse语句用于判断条件是True或False,然后根据判断结果指定要运行的语句。If语句的几种形式:(1)If条件表达式Then程序语句(2)If条件表达式Then程序语句块EndIf(3)If条件表达式Then程序语句块1Else程序语句块2EndIf(4)If条件表达式1Then程序语句块1ElseIf条件表达式2Then程序语句块2Else程序语句块N+1EndIf,IF语句示例,源文件,显示结果,3.10.2SelectCase语句,SelectCase语句是IfThenElseEndIf语句多条件时的另外一种形式,适当使用,可以使程序更简洁方便。SelectCase语句语法如下:SelectCase变量或表达式Case结果1程序语句块1Case结果2程序语句块2Case结果N程序语句块NCaseElse程序语句块N+1EndSelect,Select语句示例,源文件,显示结果,3.11使用循环语句,3.11.1ForNext循环3.11.2DoLoop循环3.11.3WhileWend循环3.11.4ForEachNext循环3.11.5循环嵌套3.11.6使用Exit语句强行退出循环,循环语句,所谓循环语句,指的是可以反复执行一组语句,直到满足循环结束条件后才停止。它的用处非常广,比如累加(从1加到N)或从数据库中依次读取所有记录。常用的循环语句有:ForNext循环、DoLoop循环等。,3.11.1ForNext循环,ForNext循环是一种强制型的循环。在循环的过程中,可以指定循

温馨提示

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

评论

0/150

提交评论