使用VBScript条件语句控制程序流程
在一般情况下,程序语句的执行是按照其书写顺序来执行的。前面的代码先执行,后面的代码后执行。但是这种简单的自上而下的单向流程只适于用一些很简单的程序。大多数情况下,需要根据逻辑判断来决定程序代码执行的优先顺序
。要改变程序代码执行的先后顺序,任何编程语言都需要用
到条件语句和循环语句。
这一节我们主要介绍条件语句。
VBScript 条件语句有:
- If...Then...Else 条件语句
- Select Case 条件语句
使用 If...Then
...Else 条件语句进行判断
条件为 True 时运行语句
True 时,即当符合
If 条件时,执行 If 至 。
当 If 条件为 True 时,即当符合 If 条件时,执行 If 至 End If 之间的脚本。下面是个简单示例,请注意此例省略了关键字 Else:
<script type="text/vbscript">
vMon=Month(Date)
'Date 函数返回当前系统日期,Month 函数返回所给日期的月份数。
if vMon = 5 then
document.write("这个月是5月份。")
end if
</script
>
..Then...Else 语句类似,但是可以使代码更加简练易读。但是这种简单的自上而下的单向流程只适于用一些很简单的程序!
演示示例
条件为 True 和 False 时分别运行某些语句
时运行某一语句块,条件为 False 时运行另一语句块。
可以使用 If...Then...Else 语句定义两个可执行语句块:条件为 True 时运行某一语句块,条件为 False 时运行另一语句块。
<script type="text/vbscript">
vMon=Month(Date)
'Date 函数返回当前系统日期, Month 函数返回所给日期的月份数。
if vMon >= 3
or vMon <11 then
document
.write
("天气好
,要出去玩耍。")
else
document.write("天气冷
,要睡懒觉。")
end if
</script>
至 End If 之间的脚本。下面是个简单示例,请注意此例省略了关键字。
演示示例
对多个条件进行判断
If...Then...Else 语句的一种变形允许你从多个条件中选择,即添加一个或多个 ElseIf 子句以扩充
If...Then...Else 语句的功能,使你可以控制基于多种可能的程序流程。例如:
<script type="text/vbscript">
vDay=Weekday(Date)
'Date 函数返回当前系统日期
'Weekday 函数返回代表一星期中某天的整数。缺省以星期天为第一天,返回值为1
。
if vDay = 6 then
document
.write("总算熬到星期五了。")
elseif vDay
> 1
and vDay
<6 then
document.write("明天要上班,想想就烦。")
else
document.write("哈哈,周末啦!")
end if
</script>
演示示例
可以添加任意多个 Else
If 子句以提供多种选择
。使用多个 Else
If 子句经常会变得很累赘。在多个条件中进行选择的更好方法
是使用 Select Case 语句
。
使用 Select Case 条件语句进行判断
演示示例 结构提供了
If...Then...。
Select Case 结构提供了 If...Then...ElseIf 结构的一个变通形式
,可以从多个语句块中选择执行其中的一个。Select Case 语句提供的功能
与 If...Then...Else 语句类似,但
是可以使代码更加简练易读
。
Select C
ase 结构在其开始处使用一个只计算一次的简单测试表达式。表达式的结果将
与结构中每个 C
ase 的值比较。如果匹配,则执行与该 Case 关联的语句块,示例代码如下
:
<script type="text/vbscript">
vDay=Weekday(Date)
'Date 函数返回当前系统日期
'Weekday 函数返回代表一星期中某天的整数。缺省以星期天为第一天
,返回值为1。
Select Case vDay
Case 1
document.write
("今天是星期天。")
Case 2
document
.write("今天是星期一。")
Case 3
document.write("今天是星期二。")
C
ase 4
document.write("今天是星期三。")
Case 5
document.write("今天是星期四。")
Case 6
document
.write("今天是星期五。")
Case else
document.write("今天是星期六。")
end select
</script
>
演示示例
请注意 Select Case 结构只计算开始处的一个表达式(只计算一次),而 If...Then...ElseIf 结构计算每个 ElseIf 语句的表达式,这些表达式可以各不相同。仅当每个 ElseIf 语句计算的表达式都相同时,才可以使用 Select Case 结构代替
If...Then...ElseIf 结构。
(编辑:网站学习网)
|