【文档说明】ASP与动态网站设计——VBScipt语言简介课件.ppt,共(54)页,232.502 KB,由小橙橙上传
转载请保留链接:https://www.ichengzhen.cn/view-45126.html
以下为本文档部分文字说明:
VBScipt语言简介一、什么是VBScript?•MicrosoftVisualBasicScriptingEdition是程序开发语言VisualBasic家族的最新成员,它将灵活的Script应用于更广泛的领域,包括MicrosoftInternetExp
lorer中的Web客户机Script和MicrosoftInternetInformationServer中的Web服务器Script。•VBScript使用ActiveX™Script与宿主应用程序对话。使用ActiveXScript,浏览器和其他宿主应用程序
不再需要每个Script部件的特殊集成代码。ActiveXScript使宿主可以编译Script、获取和调用入口点及管理开发者可用的命名空间。通过ActiveXScript,语言厂商可以建立标准Script运行时语言。•Microsoft
将提供VBScript的运行时支持。Microsoft正在与多个Internet组一起定义ActiveXScript标准以使Script引擎可以互换。ActiveXScript可用在Microsoft®InternetExplorer和Microsoft®In
ternetInformationServer中。在HTML页面中添加VBScript代码•SCRIPT元素用于将VBScript代码添加到HTML页面中。•<SCRIPT>标记VBScript代码写
在成对的<SCRIPT>标记之间。例如,以下代码为一个测试传递日期的过程:<SCRIPTLANGUAGE="VBScript"><!—FunctionCanDeliver(Dt)CanDeliver=(CDate(Dt)-Now())>2En
dFunction--></SCRIPT>代码的开始和结束部分都有<SCRIPT>标记。LANGUAGE属性用于指定所使用的Script语言。由于浏览器能够使用多种Script语言,所以必须在此指定所使用的Script
语言。注意CanDeliver函数被嵌入在注释标记(<!--和-->)中。这样能够避免不能识别<SCRIPT>标记的浏览器将代码显示在页面中。在HTML页面中添加VBScript代码•SCRIPT块可以出现在HTML页面
的任何地方(BODY或HEAD部分之中)。然而最好将所有的一般目标Script代码放在HEAD部分中,以使所有Script代码集中放置。这样可以确保在BODY部分调用代码之前所有Script代码都被读取并解码。•大多数Script代码在Sub或Fu
nction过程中,仅在其他代码要调用它时执行。然而,也可以将VBScript代码放在过程之外、SCRIPT块之中。这类代码仅在HTML页面加载时执行一次。这样就可以在加载Web页面时初始化数据或动态地改变页面的外观。
二、VBScript数据类型•VBScript只有一种数据类型,称为(不定型)Variant。Variant是一种特殊的数据类型,根据使用的方式,它可以包含不同类别的信息。因为Variant是VBScript中唯
一的数据类型,所以它也是VBScript中所有函数的返回值的数据类型。•Variant用于数字上下文中时作为数字处理,用于字符串上下文中时作为字符串处理。•除简单数字或字符串以外,Variant可以进一步区分数值信息的特定含义。例如使用数值信息表示日期或时间。此类数据在与其他日期或时间数据一起使用
时,结果也总是表示为日期或时间。当然,从Boolean值到浮点数,数值信息是多种多样的。Variant包含的数值信息类型称为子类型。大多数情况下,可将所需的数据放进Variant中,而Variant也会按照最适用于其包含的数据的方式进行操作。Variant子类型子类型描述Empty未初始化的Va
riant。对于数值变量,值为0;对于字符串变量,值为零长度字符串("")。Null不包含任何有效数据的Variant。Boolean包含True或False。Byte包含0到255之间的整数。Integer包含-32,768到32,767之间的整数。Currenc
y-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.7
9769313486232E308。Date(Time)包含表示日期的数字,日期范围从公元100年1月1日到公元9999年12月31日。String包含变长字符串,最大长度可为20亿个字符。Object包含
对象。Error包含错误号。三、VBScript变量•变量是一种使用方便的占位符,用于引用计算机内存地址,该地址可以存储Script运行时可更改的程序信息。例如,可以创建一个名为ClickCount的变量来存储用户单击Web页面上某个对象的次
数。使用变量并不需要了解变量在计算机内存中的地址,只要通过变量名引用变量就可以查看或更改变量的值。在VBScript中只有一个基本数据类型,即Variant,因此所有变量的数据类型都是Variant。变量的声明•声明变量的一种方式是使用Dim语
句、Public语句和Private语句在Script中显式声明变量。例如:DimDegreesFahrenheit声明多个变量时,使用逗号分隔变量。例如:DimTop,Bottom,Left,Right•另一种方式是通过直接在Script中使用变量名这一简单
方式隐式声明变量。这通常不是一个好习惯,因为这样有时会由于变量名被拼错而导致在运行Script时出现意外的结果。因此,最好使用OptionExplicit语句显式声明所有变量,并将其作为Script的第一条语
句。命名规则变量命名必须遵循VBScript的标准命名规则。变量命名必须遵循:1、第一个字符必须是字母。2、不能包含嵌入的句点(.)。3、长度不能超过255个字符。4、在被声明的作用域内必须唯一。变量的作用域与存活期•变量的作用域由声明它的位置决定。如果在过程中声明变量,
则只有该过程中的代码可以访问或更改变量值,此时变量具有局部作用域并被称为过程级变量。如果在过程之外声明变量,则该变量可以被Script中所有过程所识别,称为Script级变量,具有Script级作用域。•变量存
在的时间称为存活期。Script级变量的存活期从被声明的一刻起,直到Script运行结束。对于过程级变量,其存活期仅是该过程运行的时间,该过程结束后,变量随之消失。在执行过程时,局部变量是理想的临时存储空间。可以在不同过程中使用同名的局部
变量,这是因为每个局部变量只被声明它的过程识别。•给变量赋值创建如下形式的表达式给变量赋值:变量在表达式左边,要赋的值在表达式右边。例如:B=200标量变量和数组变量•多数情况下,只需为声明的变量赋一个值。只包含一个值的变量被称为标量变量。有时候,将多个相关值赋给一个变量更为方便
,因此可以创建包含一系列值的变量,称为数组变量。数组变量和标量变量是以相同的方式声明的,唯一的区别是声明数组变量时变量名后面带有括号()。数组变量•下例声明了一个包含11个元素的一维数组:DimA(10)虽然括号中显示的数字是10,但
由于在VBScript中所有数组都是基于0的,所以这个数组实际上包含11个元素。在基于0的数组中,数组元素的数目总是括号中显示的数目加1。这种数组被称为固定大小的数组。•在数组中使用索引为数组的每个元素赋值。从0到10,将数据
赋给数组的元素,如下所示:A(0)=256A(1)=324A(2)=100...A(10)=55•与此类似,使用索引可以检索到所需的数组元素的数据。例如:...SomeVariable=A(8)...数组变量•数组并不仅限于一维。数组的维数最大
可以为60。•声明多维数组时用逗号分隔括号中每个表示数组大小的数字。在下例中,MyTable变量是一个有6行和11列的二维数组:DimMyTable(5,10)•在二维数组中,括号中第一个数字表示行的数目,第二个数
字表示列的数目。动态数组•也可以声明动态数组,即在运行Script时大小发生变化的数组。对数组的最初声明使用Dim语句或ReDim语句。但是对于动态数组,括号中不包含任何数字。例如:DimMyArray()ReDimAnotherArray()•要使用动态数组,必须
随后使用ReDim确定维数和每一维的大小。在下例中,ReDim将动态数组的初始大小设置为25,而后面的ReDim语句将数组的大小重新调整为30,同时使用Preserve关键字在重新调整大小时保留数组的内容。ReDimMyArray(25)...ReDimPreserveMyA
rray(30)•重新调整动态数组大小的次数是没有任何限制的,但是应注意:将数组的大小调小时,将会丢失被删除元素的数据。四、VBScript常数•常数是具有一定含义的名称,用于代替数字或字符串,其值从不改变。VBScr
ipt定义了许多固有常数。在我们自己定义常数时不能使用固有常数的名称。•您可以使用Const语句在VBScript中创建用户自定义常数。使用Const语句可以创建名称具有一定含义的字符串型或数值型常数,并给它们赋原义值。例如:ConstMyString=―这是一个字符串。”ConstMyA
ge=49•请注意字符串文字包含在两个引号(―‖)之间。这是区分字符串型常数和数值型常数的最明显的方法。日期文字和时间文字包含在两个井号(#)之间。例如:ConstCutoffDate=#6-1-97#•最好采用一个命名方案以区分常数和变量。这样可以避免在运行
Script时对常数重新赋值。例如,可以使用“vb‖或“con‖作常数名的前缀,或将常数名的所有字母大写。将常数和变量区分开可以在开发复杂的Script时避免混乱。五、VBScript运算符•VBScript的运算符,包括:算术运算符比
较运算符连接运算符逻辑运算符VBScript运算符及优先级表运算符比较运算符逻辑运算符描述符号描述符号描述符号求幂^等于=逻辑非Not负号-不等于<>逻辑与And乘*小于<逻辑或Or除/大于>逻辑异或Xor整除\小于等于<=
逻辑等价Eqv求余Mod大于等于>=逻辑隐含Imp加+对象引用比较Is减-字符串连接连接二个字符串+&字符串连接运算符优先级•当表达式包含多个运算符时,将按预定顺序计算每一部分,这个顺序被称为运算符优先级。可以使
用括号越过这种优先级顺序,强制首先计算表达式的某些部分。运算时,总是先执行括号中的运算符,然后再执行括号外的运算符。但是,在括号中仍遵循标准运算符优先级。•当表达式包含多种运算符时,首先计算算术运算符,然后计算比较运算符,最后计算逻
辑运算符。所有比较运算符的优先级相同,即按照从左到右的顺序计算比较运算符。算术运算符和逻辑运算符的优先级如上表所示。•当乘号与除号同时出现在一个表达式中时,按从左到右的顺序计算乘、除运算符。同样当加与减同时出现在一个表
达式中时,按从左到右的顺序计算加、减运算符。•字符串连接(&)运算符不是算术运算符,但是在优先级顺序中,它排在所有算术运算符之后和所有比较运算符之前。Is运算符是对象引用比较运算符。它并不比较对象或对象的值,而只是进行检查,判断两个对象引用是否引用同一个
对象。六、VBScript流程控制•在VBScript中程序的执行是由前到后按顺序进行的。如果要改变这种执行的顺序,就要使用VBScript的流程控制语句。这些流程控制语句包括:–条件语句–循环语句–过程调用语句使用条件语句•使用条件语句和循环语句可以控制脚本的
流程。使用条件语句可以编写进行判断和重复操作的VBScript代码。在VBScript中可使用以下条件语句:–If...Then...Else语句–SelectCase语句•If...Then...Else语句用于计算条件是否为
True或False,并且根据计算结果指定要运行的语句。通常,条件是使用比较运算符对值或变量进行比较的表达式。If...Then...Else语句可以按照需要进行嵌套。•SelectCase结构提供了If...Then..
.ElseIf结构的一个变通形式,可以从多个语句块中选择执行其中的一个。SelectCase语句提供的功能与If...Then...Else语句类似,但是可以使代码更加简练易读。If...Then...Else语句•根据表达式的值有条件地执行一组语句。•语法结构:IfconditionThenst
atements[Elseelsestatements]或者,使用块形式的语法:IfconditionThen[statements][ElseIfcondition-nThen[elseifstatements]]
...[Else[elsestatements]]EndIf•可以添加任意多个ElseIf子句以提供多种选择。使用多个ElseIf子句经常会变得很累赘。在多个条件中进行选择的更好方法是使用SelectCase语句。示例一CH02/如果.HTM<SCRIPT
LANGUAGE="VBSCRIPT"><!--SCORE=70IFSCORE>=60THENMSGBOX"及格!"--></SCRIPT>CH02/如果就否则.HTM<SCRIPTLANGUAGE="VBSCRI
PT"><!--SCORE=INPUTBOX("请输入电脑成绩:","输入成绩")IFSCORE>=60THENMSG="及格!"ELSEMSG="不及格!"ENDIFMSGBOX"您的电脑成绩"&MSG--></SCRIPT>示例二CH02/如果就否则如果就.HTM<S
CRIPTLANGUAGE="VBSCRIPT"><!--SCORE=INPUTBOX("请输入电脑成绩:","输入成绩")IFSCORE>=90THENMSG="优等"ELSEIFSCORE<90ANDSCORE>=80THENMSG="甲等"ELSEIFSCORE<80AND
SCORE>=70THENMSG="乙等"ELSEIFSCORE<70ANDSCORE>=60THENMSG="丙等"ELSEMSG="丁等"ENDIFMSGBOX"您的电脑成绩为:"&MSG--></SCRIPT>
SelectCase语句•根据表达式的值执行几组语句之一。•语法结构:SelectCasetestexpression[Caseexpressionlist-n[statements-n]]...[CaseElseexpressio
nlist-n[elsestatements-n]]EndSelect•SelectCase结构在其开始处使用一个只计算一次的简单测试表达式。表达式的结果将与结构中每个Case的值比较。如果匹配,则执行与该
Case关联的语句块。示例三CH02/多向选择1.HTM<SCRIPTLANGUAGE="VBSCRIPT"><!--NO=INPUTBOX("请输入一个1-5之间的数字:","汉译英")SELECTCASENO
'以NO作为比较对象CASE1MSG="ONE"CASE2MSG="TWO"CASE3MSG="THREE"CASE4MSG="FOUR"CASEELSEMSG="FIVE"ENDSELECTMSGBOXNO&"的英文为:"&MSG--></SCRIPT>说明•
请注意SelectCase结构只计算开始处的一个表达式(只计算一次),而If...Then...ElseIf结构计算每个ElseIf语句的表达式,这些表达式可以各不相同。•只有当每个ElseIf语句计算的表达式都相同时,才可以使用Select
Case结构代替If...Then...ElseIf结构。使用循环语句•循环用于重复执行一组语句。循环可分为三类:一类在条件变为False之前重复执行语句,一类在条件变为True之前重复执行语句,另一类按照指定的次数重复执行语句。•在V
BScript中可使用下列循环语句:–Do...Loop:当(或直到)条件为True时循环。–While...Wend:当条件为True时循环。–For...Next:指定循环次数,使用计数器重复运行语句。–ForEach...Next:对于集合中的每
项或数组中的每个元素,重复执行一组语句。Do...Loop语句•当条件为True时或条件变为True之前重复执行某语句块。•语法结构:Do[{While|Until}condition][statement
s][ExitDo][statements]Loop也可以使用下面的语法(循环至少执行一次):Do[statements][ExitDo][statements]Loop[{While|Until}condition]•ExitDo仅可以用在Do...Loop控制语句中,提
供另一种退出Do...Loop的方法。可以在Do...Loop语句中的任何位置放置任意个ExitDo。ExitDo通常与条件判断语句(如If...Then)一起使用,将控制传递给紧随在Loop语句后面的语句。•当用于嵌套Do...Loop中的时候,ExitDo将控制传递
给其所在循环的上一层嵌套循环。While关键字与Until关键字•While关键字和Until关键字都是用于检查Do...Loop语句中的条件。•使用While关键字时,当条件为True时重复执行语句•使用Until关键字时,重复执行语句直到条件变为T
rue为止•有两种方式检查条件:–在进入循环之前检查条件;–在循环至少运行完一次之后检查条件。Do...Loop语句示例一CH02/LOOP.HTM<SCRIPTLANGUAGE="VBSCRIPT"><!--DOANS=INPUTBOX("请输入一个数字")'要求输入数字IFANS=
""THENMSGBOX"结束"EXITDO'按取消跳出循环ELSEIFANS>678THENMSGBOX"输入的数太大了"ELSEIFANS<678THENMSGBOX"输入入的数太小了"ELSEIFANS=678THENMSGBOX"答对了"EXITDOENDIFLOOP--></SCRIP
T>Do...Loop语句示例二CH02/UNTIL循环.HTM<SCRIPTLANGUAGE="VBSCRIPT"><!--'英文单词测验,不管大小写都算正确ANS=INPUTBOX("请输入“快乐”的英文")D
OUNTILUCASE(ANS)="HAPPY"MSG="不正确!"&CHR(13)&CHR(10)&"请重新输入“快乐”的英文"ANS=INPUTBOX(MSG)LOOPMSGBOX"太棒了!您答对
了!"'UCASE()函数可将括号内的字符串全部转换为大写字母--></SCRIPT>使用While...Wend•While...Wend语句是为那些熟悉其用法的用户提供的。但是由于While...Wend缺少灵活性,所以建议最
好使用Do...Loop语句。•当指定的条件为True时,执行一系列的语句。•语法结构:Whilecondition[statements]Wend•如果condition为True,则statements中所有Wend语句之前的语句都将被执行
,然后控制权将返回到While语句,并且重新检查condition。如果condition仍为True,则重复执行上面的过程。如果不为True,则从Wend语句之后的语句继续执行程序。•While...Wend
循环可以是多层嵌套结构。每个Wend与最近的While语句对应。使用For...Next语句•以指定次数重复执行一组语句。•语法结构:Forcounter=startToend[Stepstep][statements][ExitFor][statements]Next•ExitFor只
能用于ForEach...Next或For...Next结构中,提供另一种退出循环的方法。可在语句中的任意位置放置任意个ExitFor语句。ExitFor经常和条件判断语句一起使用(例如If...Then),并立即将控制权转移到Next之后的语句。•可以将一个For...
Next循环放置在另一个For...Next循环中,组成嵌套循环。每个循环中的counter要使用不同的变量名。For...Next语句示例CH02/循环1.HTM<SCRIPTLANGUAGE="VBSCRIPT"><!--'计算1加到10的总和TOATAL=0FORCOUNTER=1TO
10TOTAL=TOTAL+COUNTERNEXTMSGBOX"1加到10的总和为"&TOTAL--></SCRIPT>使用ForEach...Next•ForEach...Next循环与For...Next循环
类似。ForEach...Next不是将语句运行指定的次数,而是对于数组中的每个元素或对象集合中的每一项重复一组语句。这在不知道集合中元素的数目时非常有用。•语法结构:ForEachelementIngroup[statements][ExitFor][statements]Ne
xt[element]•可以将一个ForEach...Next循环放置在另一个之中,组成嵌套式ForEach...Next循环。但是每个循环的element必须是唯一的。•注意如果省略Next语句中的element,则程序仍会象已包含它一样继续执行。如果Next语句在
其相应的For语句之前出现,则会产生错误。ForEach...Next语句示例CH02/FOR-EACH.HTM<SCRIPTLANGUAGE="VBSCRIPT"><!--DIMSCORE(3)'定义一个有4个变量的
数组SCORE(0)=90SCORE(1)=86SCORE(2)=99SCORE(3)=54'用循环打印每一位学生的成绩FOREACHIINSCORE'此时数组只需打名称,不必须加()MSG=MSG&I&CHR(13)&CHR(10)NEXTMSGBOXMSG--></SCRIPT>七
、VBScript过程•在VBScript中,过程被分为两类:Sub过程和Function过程。•Sub过程Sub过程是包含在Sub和EndSub语句之间的一组VBScript语句,执行操作但不返回值。Sub过程可以使用参数(由调用过程传递的常数、变量或表达式)。如果Sub过
程无任何参数,则Sub语句必须包含空括号()。•Function过程Function过程是包含在Function和EndFunction语句之间的一组VBScript语句。Function过程与Sub过程类似,但是Function过程可以返回值。Functi
on过程可以使用参数(由调用过程传递的常数、变量或表达式)。如果Function过程无任何参数,则Function语句必须包含空括号()。Function过程通过函数名返回一个值,这个值是在过程的语句中赋给函数名的。
Function返回值的数据类型总是Variant。向过程传递数据•给过程传递数据的途径是使用参数。参数被作为要传递给过程的数据的占位符。参数名可以是任何有效的变量名。使用Sub语句或Function语句创建过程时,过程名之后必须紧跟括号。括号中包含所有参数,参
数间用逗号分隔。•要从过程获取数据,必须使用Function过程。请记住,Function过程可以返回值;Sub过程不返回值。在代码中使用Sub和Function过程•调用Function过程时,函数名必须用在变量赋值语句的右端或表达式中。例如:Temp=Celsius(fDe
grees)或MsgBox―温度为”&Celsius(fDegrees)&―摄氏度。”•调用Sub过程时,只需输入过程名及所有参数值,参数值之间使用逗号分隔。不需使用Call语句,但如果使用了此语句,则必须将所有参数包含
在括号之中。两种方式效果相同。•注意当不使用Call语句进行调用时,括号被省略。八、VBScript内置函数•除自己可以编制一些自定义函数外、VBScript还提供了一些内部函数供编程者使用。这些函数包括:–数学函数–日期时间函数–字符串函数–类型检查函数
–类型转换函数–格式化函数–其他函数*函数查询可以使用:VBSDOC.EXE和VBSDOC5.5.EXE常用函数1.日期与时间函数下表给出了VBScript提供的用于显示日期与时间的函数。函数用途Now显示今天
的日期与现在的时间(2003-5-2120:24:49)Date显示今天(计算机系统)的日期(2022/11/25)Time显示现在(计算机系统)的时间(05:24:10)Year显示本年的年份Month显示本月的月份Day显示今天的日期Hour显示现在的时
间几点钟Minute显示现在的时间几分钟Second显示现在的时间几钞钟日期与时间函数(续)函数用法用途DateDiffDateDiff(―Var‖,Varl,Var2)Var:日期或时间间隔因子,见表3-5aVar1:第一个日期或
时间Var2:第二个日期或时间,应该比Var1晚计算两个日期或时间的间隔,例:DateDiff("d",Date(),"1/31/2002")距离2002年研究生考试还有多少天DateAddDateAdd("Var",Vaxl,Var2)Var:日期或
时间间隔因子Var1日期或时间间隔倍数Var2:日期或时间的基准对两个日期或时间作加法例:DateAdd("ww",2,Date())两个星期后是几号FormateDateTlmeFormateDateTime(Date,vbShortDate)FormateDa
teTime(Date,VbLongDate)FOrmateDateTime(Time,vbShortTime)FormateDateTilme(Time,vbLongTime)显示短日期格式显示长日期格式显示短时间格式显示长时间格式表3-5a日期或时间间隔因子间隔因子yyyyndwwhmS
说明年月日星期小时分秒示例<HTML><HEAD><TITLE>时期时间函数</TITLE><SCRIPTLANGUAGE="VBSCRIPT"><!--MSGBOX"现在是"&NOW()MSGBOX"今天的日期"&DATE()
MSGBOX"现在的时间"&TIME()MSGBOX"今天的日期是"&YEAR(DATE)&"年"&MONTH(DATE)&"月"&_DAY(DATE)&"日"MSGBOX―现在的时间是”&HOUR(NOW)&―时”&MINUTE(NOW)&―分”&_SECOND(NOW)&
"秒"--></SCRIPT></HEAD><BODY></BODY></HTML>[CH03/日期时间函数.HTM]示例运行结果在这个示例中,想要取得系统日期必须先使用Now()函数,这个函数会返回一个值代表日期。而Ho
ur()、Minute()、Second()这三个函数则必须传入一个参数,这个参数可以直接传入Now()函数以代表现在的时间,利用这些函数,我们可以在网页上做一个动态的时钟。我们来看破下面这个示例。示例[CH03/动态时钟.HTM]<HTML><HEAD><T
ITLE>动态时钟</TITLE><SCRIPTLANGUAGE="VBSCRIPT"><!--SETTIMEOUT"CLOCK",1000SUBCLOCK()H=HOUR(NOW)M=MINUTE(NOW)S=SECOND(NOW)NOWTIM
E="现在时间是"&H&"点"&M&"分"&S&"秒"NOWT.INNERHTML=NOWTIMESETTIMEOUT"CLOCK",1000ENDSUB--></SCRIPT></HEAD><BODY><CENTERID="NOWT"
></CENTER></BODY></HTML>常用函数2.字符串函数在通常的ASP程序开发中,用的最多的还是字符串。比如在用户注册时输入的用户名、密码等选项,还有在留言板中的留言标题、内容、留言人等信息,都是被作为字符串处理的。这样就经常需要用到字符串函
数来对字符串进行截头去尾、大小写替换等操作。常用的字符串函数如下表所示。函数用途Len(sbing)返回stung字符串里的字符数目Trim(string)将字符串前后的空格去掉Mid(string,start,length)从string字符串的start字符开始取得len
gth长度的字符串,如果省略第三个参数表示是取从start字符开始到字符串结尾的字符串Left(string,length)从string字符串的左边取得length长度的字符串Right(string,length)从string字符串的右边取得length长度的字符串LCase(strin
g)将string字符串里的所有大写字母转化为小写字母UCase(string)将string字符串里的所有小写字母转化为大写字母StrComp(str1,str2)返回str1字符串与str2字符串的比较结果,如果两个字符串相同,则返回0常用函数
3.数学函数VBSchpt提供的常用数学函数如下表所示。函数用途Abs(number)返回一个数的绝对值Sqr(number)返回一个数的平方根Int(number)取整函数,返回小于等于number的第一个
整数Cos(number)返回角度的Cos值Sin(number)返回角度的Sin值Tan(number)返回角度的Tan值Log(number)返回一个数的Log值Rnd(number)返回一个随机数常用函数4.检验函数在登录某些ASP网页如聊天室、BBS论坛时,该网页都会要求用户先
注册,填写诸如用户名、密码等选项,这些选项的内容会被作为字符串读入到ASP程序中,而J2在多数情况下,为了预防某些人有意的胡乱填写或无意的遗漏了某些选型,程序会对用户填写的内容进行检查,如某些必填项是否填写了,输入
项的格式是否正确等等,此时,就会用到检验函数,常用的检验函数如下表所示。函数用途VarType(Variant)检查变量Variant的值,函数值为该变量的数据类型(见下表)IsEmpty(Variant)检查变量Variant的值,如果Variant是Empt
y,则函数值为TrueIsNull(Variant)检查变量Variant的值,如果Variant是Null,则函数值为TrueIsObject(Variant)检查变量Variant的值,如果Variant是对象类型,则函数值为TruesNumeric(
Variant)检查变量Variant的值,如果Variant是数字类型,则函数值为TruelsArray(Variant)检查变量Variant的值,如果Variant是数组类型,则函数值为TrueIsDate(Variant)检查变量Varia
nt的值,如果Variant是日期类型或可合法地转化为有效日期,则IsDate函数返回TrueVarTape函数返回值的数据类型值常数数据类型值常数数据类型0vbEmptyEmpty(未初始化)9vbObjectAutomation对象1vbNullNull(无有效
数据)10vbError错误2vbInteger整数11vbBooleanBoolean3vbLong长整数12vbVariantVariant(只和变量数组一起使用)4vbSingle单精度浮点数13vbDataObject
数据访问对象5vbDouble双精度浮点数17vbByte字节6vbCurrency货币7vbDate日期8192vbArray数组8vbString字符串说明VarType函数从不通过自己返回Arra
y的值。它总是要添加一些其他值来指示一个具体类型的数组。当Variant的值被添加到Array的值中以表明VarType函数的参数是一个数组时,它才被返回。例如,对一个整数数组的返回值是2+8192的计算结果,或8194。如果
一个对象有默认属性,则VarType(object)返回对象默认属性的类型。常用函数5.输入输出函数输入、输出函数只能在客户端运行,不能在服务器端运行,因为这两个函数是要在客户端弹出窗口的。经常有初学者想方设法在服务器端运行,结果总是失败。这两个函数的作用是很大的,因为有些
信息验证之类的事务如果放在客户端进行,就能既快又减轻了服务器的负荷。比如,有的网站在填写注册信息时,很多验证信息窗口就是利用这两个函数在客户端完成的,就不必都到服务器上去验证。(1)MsgBox:输出函数该函数告诉用户一些信息。语法
如下MsgBox(prompt[,buttons,titlel)其中:prompt——显示在窗口中的文字buttons——可选项,用以指定窗口的外观和按钮的类型(button的值见下表)title——可选项,显示在
窗口标题中的文字(2)InputBox:输入函数该函数用于显示一个输入窗口,要求用户输入数据。语法如下:String=InputBox(prompt[,titlell,default])其中:Strin
g——文本框中的内容,即用户输入的内容prompt——显示在窗口中的文字title——可选项,显示在窗口标题中的文字default——可选项,用于指定窗口中文本输入框内的默认字符串buttons参数可以有以
下值:值常数描述0vbOKOnly只显示确定按钮。1vbOKCancel显示确定和取消按钮。2vbAbortRetryIgnore显示放弃、重试和忽略按钮。3vbYesNoCancel显示是、否和取消按钮。4vbYesNo显示是和否按
钮。5vbRetryCancel显示重试和取消按钮。16vbCritical显示临界信息图标。32vbQuestion显示警告查询图标。48vbExclamation显示警告消息图标。64vbInformatio
n显示信息消息图标。0vbDefaultButton1第一个按钮为默认按钮。256vbDefaultButton2第二个按钮为默认按钮。512vbDefaultButton3第三个按钮为默认按钮。768vbDe
faultButton4第四个按钮为默认按钮。0vbApplicationModal应用程序模式:用户必须响应消息框才能继续在当前应用程序中工作。4096vbSystemModal系统模式:在用户响应消息框前,所有应用程序都被挂起。MsgBox(对话框)函数的返
回值•在对话框中显示不同的按钮,使操作非常方便,但如何知道用户所按下的按钮呢?我们可以通过MsgBox(对话框)函数的返回值来进行判断。这些值如下表:值常数按钮1vbOK确定2vbCancel取消3vbAbort放弃4vbRetry重试5vbIgn
ore忽略6vbYes是7vbNo否常用函数6.类型转换函数VBScript一般会将其代表的数据子类型自动转换成合适的数据类型。但有时候,自动转换也会造成一些数据类型不匹配的错误,这时,可以使用VBScript的转换函数来强制转换数据的子类型。各种转
换函数及功能函数功能CStr(Variant)将变量Variant转化为字符串类型CDate(Variant)将变量Variant转化为日期类型CInt(Variant)将变量Variant转化为整数类型CLng(Variant)将变
量Variant转化为长整数类型CSng(Variant)将变量Variant转化为Single类型CDbl(Variant)将变量Variant转化为Double类型CBool(Variant)将变量Variant转化为布尔类型九、IE浏览器对象使用IE浏览器对象可以对用户的浏览器进行
控制、取得浏览器的信息等。此部分内容不是ASP的内容,但在我们开发程序时会经常用到,希望同学们自学。详细内容见IE浏览器对象•本章要点在这一章里我们学习了VBScript语言的基本语法,学习了变量的定义和使用、流程控制(条件语句、循环语句、过程调用语句)、内置函数的使用等。同学们要在此基础
上多加练习,掌握好语言为下一步使用VBScript语言编写ASP程序打好基础。