*ASP程序可以使用JScript和VBScript脚本语言来作为服务器脚本语言,但是实陆应用中一般使用VBScript作为服务顺的脚本语言,同时IIS默认的服务器脚本语言也是VBScript
一、VBS基本知识
1 变量
变量
1 概念
变量是内存中的一块区域,由程序员赋予名称并用于存储信息
*变量由变量名称和变量值组成
2 声明变量
语法:Dim 变量名称,变量名称....
3 变量类型
*字符型 string,必须使用英文双引号 例 "str"
注意 双引号内含双引时用单引号代替
*数值型:直接描写结果
⑴字节型Byte,存储0~255间的整数
⑵整型 Integer简写Int,存储-32768~32767之间的整数
⑶长整型 long 简写lng
⑷单精度浮点 single 简写sng
⑸双精度浮点 double 简写dbl
*逻辑型Boolean:直接书写结果,true|false
*日期/时间型DateTime,必须括在双#号内使用
四、输出
内容形式{ 内容为文本或HTML标记 例 Response.Write("文本或HTML标记")
{ 内容为变量值 例 Response.Write(变量名称)
{ 内容为变量与文本/标记、变量的组合体例 Response.Write("文本" & 变量名称)
五、判断语句
单分支:语法 If 条件 Then
执行代码...
else
执行代码
End if '条件的条件值必须为逻辑型
六、获取表单元素的提交值
语法:[变量名称=]Request.Form("表单元素名称")
七、函数
1 Now()
功能,获取系统的当前日期及时间
语法:[变量名称=]Now()
2 Date()
功能,获取系统的当前日期
语法:[变量名称=]Date()
3 Time()
功能,获取系统的当前时间
语法:[变量名称=]Time()
4 Ltrim() 函数 Rtrim() Trim()
功能:删除前导空格(删除后续空格;删除前后空格)
语法[变量名称=] Ltrim()
5 Replace()
功能:替换
语法:[变量名称=] Replace("字符串"/变量名称,"需要替换的字符",替换的字符)
例 chars="AABBCC"
Replace(chars,"A","C")
'运行结果 CCBBCC
6 len()
功能:测试长度
语法:[变量名称=] len("字符串"/变量名称)
7 IsNull()
功能: 测试是否为空
语法:[变量名称=] IsNull(变量名称)
8 IsNumeric()
功能:测试是否为数字
语法:[变量名称=] IsNumric(变量名称)
9 Instr()
功能:返回字符串2在字符串1中出现的位置
语法:[变量名称=] Instr("字符串"/变量名称,"字符串"/变量名称)
例 Instr("ABCDEF","C")
运行结果为3
** 编写较复杂的程序时,变量应该先声明后使用,这样脚本易于调试且程序的易读性强
** OPTION EXPLICIT语句强制所有变量必须声明; 如果没用使用Dim语句声明变量,则使用该程序时会产生错误信息"未定义变量"
**OPTION EXPLICIT语句必须放在HTML标记之前
(1) Variant数据类型:
用户 VBScript的Dim语句声明一个变量时,没有为变量定义数据类型,则此变量为Variant数据类型
Variant是一种特殊的变量类型,它可以表示其它变量类型
(2) 数据类型:
Byte 0~255
Boolean True | False
integer -32768~32767
Long -2147483648~ 2147483647
Date 0001年1月1日~9999年12月31
Object 任何对象
String 长度从0个字符到大约20亿个字符
*变量有一种空变量,为变量分配一个值之前,该变量值是空的,函数IsEmpty可以检测一个变量是否为空 例 IsEmpty(str)
*变量赋空串""
*给变量赋空值也可Null
*使用一个已经分配了值的变量成为空变量,使用关键字Empty 即可
2 常量
*VBScript既可以声明变量,也可以声明常量
*常量也是用来表示一个值
*常量与变量的区别: 声明了常量后,常量值将不能改变;而声明变量后,变量值是可变
(1)常量的声明 Const Name
(2)举例 <%Const Pi=3.14 %>
3 数组
(1)数组变量的声明: ()
Dim ArrName(Number)
举例
<%
Dim Book(4)
Book(0)="a"
Book(1)="b"
Book(2)="c"
Book(3)="d"
%>
*(2)多维数组
<%Dim Book()
ReDim Book(2,3)
'使用ReDim确定维数和每维大小
%>
3 注释
添加注释的目的: 提高源程序的可读性
4 逻辑连接和运算符
(1)逻辑运算结果 True False
(2)运算符 =
<>
< <=
> >=
(3)连接符
Not
And
Or
二、条件选择语句
1 If ..Then
2 If..Else
3 Select Case
三、循环语句
1 For Next
例 <% For i=1 To 7%>
<font size=<%=i%>> 字体</font>
<%Next%><br>
2 Do While ...Loop
例 <%
Dim i
i=1
Do While i<=7
response.write i&"<br>"
i=i+1
Loop
%>
3 For Each..Next
例
<%
Dim NameArray(50)
NameArray(0)="A"
NameArray(1)="B"
NameArray(2)="C"
NameArray(3)="D"
For Each i in NameArray
If i="C" Then
%>
<%=i%>
<%
Exit For
End If
Next
%>
练习,输出下拉列表和有序表格
四、子程序和函数
1 创建子程序的意义
子程序:编写脚本时如需要在多个地方执行相同的一组语句,则可以使用子程序
2 创建方法
Sub SubName
'内容
End Sub
例:<body>
<%
Sub samnow
response.write "Time:"&Now()
End Sub
'以下多次调用 %>
<%samnow%>
<p>
<%samnow%>
</p>
</body>
3 创建函数
* 创建函数与子程序唯一的区别是函数可以返回一个值,子程序不能返回 值
创建方法:
<%
Function listbook(bookid)
Dim Book(4)
Book(0)="A"
Book(1)="B"
Book(2)="C"
Book(3)="D"
listbook=Book(bookid)
End Function
%>
<%=listbook(2)%>
<%=listbook(0)%>
*练习随机函数的使用
<%=rnd() %>