VBScript 条件语句
条件语句
条件语句用于根据不同的情况执行不同的操作。
在 VBScript 中,我们可以使用四种条件语句:
- If 语句 - 假如您希望在条件为 true 时执行一系列的代码,可以使用这个语句
- If...Then...Else 语句 - 假如您希望执行两套代码其中之一,可以使用这个语句
- If...Then...ElseIf 语句 - 假如您希望选择多套代码之一来执行,可以使用这个语句
- Select Case 语句 - 假如您希望选择多套代码之一来执行,可以使用这个语句
If...Then...Else
在下面的情况中,您可以使用 If...Then...Else 语句:
- 在条件为 true 时,执行某段代码
- 选择两段代码之一来执行
如果在条件为 true 时只执行一条语句,可以把代码写为一行:
If i=10 Then alert("Hello")
在上面的代码中,没有 ..Else.. 语句。我们仅仅让代码在条件为 true 时(当 i=10 时)执行一项操作。
如果在条件为 true 时执行不止一条语句,那么就必须在一行写一条语句,然后使用关键词 "End If" 来结束这个语句:
If i=10 Then
alert("Hello")
i = i+1
End If
在上面的代码中,同样没有 ..Else.. 语句。我们仅仅让代码在条件为 true 时执行了多项操作。
假如您想要在条件为 true 时执行某条语句,并在条件不为 true 时执行另一条语句,就必须添加关键词 "Else":
实例(仅适用于 IE)
<script type="text/vbscript">
i=hour(time)
If i < 10 Then
document.write("Good morning!")
Else
document.write("Have a nice day!")
End If
</script>
在上面的代码中,当条件为 true 时会执行第一段代码,当条件不成立时执行第二段代码(当 i 大于 10 时)。
If...Then...ElseIf
如果您想要选择多套代码之一来执行,可以使用 If...Then...ElseIf 语句:
实例(仅适用于 IE)
<script type="text/vbscript">
i=hour(time)
If i = 10 Then
document.write("Just started...!")
ElseIf i = 11 Then
document.write("Hungry!")
ElseIf i = 12 Then
document.write("Ah, lunch-time!")
ElseIf i = 16 Then
document.write("Time to go home!")
Else
document.write("Unknown")
End If
</script>
Select Case
如果您想要选择多套代码之一来执行,可以使用 "Select Case" 语句:
实例(仅适用于 IE)
<script type="text/vbscript">
d=weekday(date)
Select Case d
Case 1
document.write("Sleepy Sunday")
Case 2
document.write("Monday again!")
Case 3
document.write("Just Tuesday!")
Case 4
document.write("Wednesday!")
Case 5
document.write("Thursday...")
Case 6
document.write("Finally Friday!")
Case else
document.write("Super Saturday!!!!")
End Select
</script>
以上代码的工作原理:首先,我们需要一个简单的表达式(常常是一个变量),并且这个表达式会被做一次求值运算。然后,表达式的值会与每个 Case 中的值作比较。如果匹配,被匹配的 Case 所对应的代码会被执行。
VBScript 循环
循环语句
循环语句用于运行相同的代码块指定的次数。Looping statements are used to run the same block of code a specified number of times.
在 VBScript 中,我们可以使用四种循环语句:
- For...Next 语句 - 运行一段代码指定的次数
- For Each...Next 语句 - 针对集合中的每个项目或者数组中的每个元素来运行某段代码
- Do...Loop 语句 - 运行循环,当条件为 true 或者直到条件为 true 时
- While...Wend 语句 - 不要使用这个语句 - 请使用 Do...Loop 语句代替它
For...Next 循环
请使用 For...Next 语句运行一段代码指定的次数。
For 语句规定计数变量(i)以及它的初始值和结束值。Next 语句会以 1 作为步进值来递增变量(i)。
实例
<html>
<body>
<script type="text/vbscript">
For i = 0 To 5
document.write("The number is " & i & "<br />")
Next
</script>
</body>
</html>
Step 关键词
通过 Step 关键词,您可以规定计数变量递增或递减的步进值。
在下面的实例中,计数变量(i)每次循环的递增步进值为 2。
For i=2 To 10 Step 2
some code
Next
如果要递减计数变量,您就必须使用负的 Step 值。并且必须规定小于开始值的结束值。
在下面的实例中,计数变量(i)每次循环的递减步进值为 2。
For i=10 To 2 Step -2
some code
Next
退出 For...Next
您可以通过 Exit For 关键词退出 For...Next 语句。
For i=1 To 10
If i=5 Then Exit For
some code
Next
For Each...Next 循环
For Each...Next 针对集合中的每个项目或者数组中的每个元素来重复运行某段代码。
实例
<html>
<body>
<script type="text/vbscript">
Dim cars(2)
cars(0)="Volvo"
cars(1)="Saab"
cars(2)="BMW"
For Each x In cars
document.write(x & "<br />")
Next
</script>
</body>
</html>
Do...Loop
如果你不知道重复多少次,可以使用 Do...Loop 语句。
Do...Loop 语句重复执行某段代码直到条件是 true 或条件变成 true。
重复执行代码直到条件是 true
您可以使用 While 关键字来检查 Do... Loop 语句的条件。
Do While i>10
some code
Loop
如果 i 等于 9,上述循环内的代码将终止执行。
Do
some code
Loop While i>10
这个循环内的代码将被执行至少一次,即使 i 小于 10。
重复执行代码直到条件变成 true
您可以使用 Until 关键字来检查 Do...Loop 语句的条件。
Do Until i=10
some code
Loop
如果 i 等于 10,上述循环内的代码将终止执行。
Do
some code
Loop Until i=10
这个循环内的代码将被执行至少一次,即使 i 等于 10。
退出 Do...Loop
您可以通过 Exit Do 关键词退出 Do...Loop 语句。
Do Until i=10
i=i-1
If i<10 Then Exit Do
Loop
这个循环内的代码,只要 i 不为 10 且 i 大于 10 时都将被执行。
更多实例(仅适用于 IE)
<!DOCTYPE html>
<html>
<body>
<script type="text/vbscript">
For i=1 To 6
document.write("<h" & i & ">This is header " & i & "</h" & i & ">")
Next
</script>
</body>
</html>
如何循环遍历 html 中的六个标题。
<!DOCTYPE html>
<html>
<body>
<script type="text/vbscript">
i=0
Do While i < 10
document.write(i & "<br>")
i=i+1
Loop
</script>
</body>
</html>
如何做一个简单的 Do...While 循环。
您已经学习了 VBScript,下一步呢?
VBScript 总结
本教程已经向您讲解了 VBScript。
您已经学习了有关变量和函数,以及如何如何根据不同的情况运行不同的脚本。
现在您已经学习了 VBScript,下一步呢?
下一步应该是学习 ASP。
HTML 文件中的脚本是在客户端(在浏览器)执行的,ASP 文件中的脚本是在服务器上执行的。
通过 ASP,您可以动态地编辑、改变或添加网页的任何内容,响应 HTML 表单提交的数据,访问任何数据或数据库并向浏览器返回结果,为不同的用户定制更有用的页面等等。
由于 ASP 文件被作为纯粹的 HTML 返回浏览器,,因此我们可以在任何浏览器中查看 ASP。