概述
循环用于重复执行一组语句。循环可分为三类:一类在条件变为 False 之前重复执行语句,一类在条件变为 True 之前重复执行语句,另一类按照指定的次数重复执行语句。
在 VBScript 中可使用下列循环语句:
Do...Loop: 当(或直到)条件为 True 时循环。
While...Wend: 当条件为 True 时循环。
For...Next: 指定循环次数,使用计数器重复运行语句。
For Each...Next:对于集合中的每项或数组中的每个元素,重复执行一组语句。
Do 循环
当(或直到)条件为True时循环,语法结构如下:
当条件为True时重复执行某语句块
1
2
3
4
5
|
Do
[{
While
|
Until
} condition]
[statements]
[
Exit
Do
]
[statements]
Loop
|
当条件变为True之前重复执行某语句块
1
2
3
4
5
|
Do
[statements]
[
Exit
Do
]
[statements]
Loop
[{
While
|
Until
} condition]
|
主要参数:
condition:数值或字符串表达式,其值为True或False。如果condition为Null,则condition被当作False
statements:当condition为True时被重复执行的一条或多条命令
具体示例代码如下:
重复执行语句直到条件变为True
1
2
3
4
5
6
7
8
9
10
11
12
|
Dim
Count:Count = 5
'定义一个变量
Do
Until
Count = 0
'直到Count变量为0时,否则一直循环
MsgBox Count
Count = Count -1
Loop
MsgBox
"循环结束"
Dim
Count:Count = 5
'定义一个变量
Do
MsgBox Count
Count = Count -1
Loop
Until
Count = 0
'直到Count变量为0时,否则一直循环
MsgBox
"循环结束"
|
当条件变为True之前重复执行某语句块
1
2
3
4
5
6
7
8
9
10
11
12
|
Dim
Count:Count = 5
'定义一个变量
Do
While
Count <> 0
'当Count变量为0时,停止循环
MsgBox Count
Count = Count -1
Loop
MsgBox
"循环结束"
Dim
Count:Count = 5
'定义一个变量
Do
MsgBox Count
Count = Count -1
Loop
While
Count <> 0
'当Count变量为0时,停止循环
MsgBox
"循环结束"
|
退出循环
Exit Do 语句用于退出 Do...Loop 循环。因为通常只是在某些特殊情况下要退出循环(例如要避免死循环),所以可在 If...Then...Else 语句的 True 语句块中使用 Exit Do 语句。如果条件为 False,循环将照常运行。示例代码如下:
1
2
3
4
5
6
7
8
9
|
Dim
Count:Count = 5
'定义一个变量
Do
While
Count <> 0
'当Count变量为0时,停止循环
MsgBox Count
Count = Count -1
If
Count = 2
Then
'判断Count变量值是否为2,如果是则退出循环
Exit
Do
End
If
Loop
MsgBox
"循环结束"
|
While…Wend循环
当条件为True时循环,语法结构如下:
1
2
3
|
While
condition
[statements]
Wend
|
主要参数:
condition:数值或字符串表达式,其值为True或False。如果condition为Null,则condition被当作False。
statements:当condition为True时被重复执行的一条或多条命令。
具体示例代码如下:
1
2
3
4
5
6
|
Dim
Count:Count = 5
'定义一个变量
While
Count <> 0
'当Count变量值不等于0,一直循环
MsgBox Count
Count = Count -1
Wend
MsgBox
"循环结束"
|
While…Wend没有Exit语句,从头一直循环到尾,若要在中途退出,则需用Do…Loop语句。
For…Next 循环
指定循环次数,使用计数器重复运行语句,语法结构如下:
1
2
3
4
5
|
For
counter = start
To
end [
Step
step]
[statements]
[
Exit
For
]
[statements]
Next
|
主要参数:
counter:用做循环计数器的数值变量。这个变量不能是数组元素或用户自定义类型的元素。
start:counter的初值。
end:counter的终值。
step:counter的步长。如果没有指定,则step的默认值为1。
具体示例代码如下:
For…Next
1
2
3
4
5
|
Dim
Count:Count = 0
'定义一个变量,并赋值为0
For
i = 1
To
10
'循环10次
Count = Count + 1
Next
MsgBox Count
'输出10
|
Step设置计数器循环步长
1
2
3
4
5
|
Dim
Count:Count = 0
'定义一个变量,并赋值为0
For
i = 1
To
10
Step
2
'设置计数器步长为2,循环5次
Count = Count + 1
Next
MsgBox Count
'输出5
|
退出循环
Exit For 语句用于在计数器达到其终止值之前退出 For...Next 语句。因为通常只是在某些特殊情况下(例如在发生错误时)要退出循环,所以可以在 If...Then...Else 语句的 True 语句块中使用 Exit For 语句。如果条件为 False,循环将照常运行。
1
2
3
4
5
6
7
8
|
Dim
Count:Count = 0
'定义一个变量,并赋值为0
For
i = 1
To
10
'循环10次
Count = Count + 1
If
Count = 5
Then
'当变量Count的值为5时,退出当前循环
Exit
For
End
If
Next
MsgBox Count
'输出5
|
For Each...Next 循环
For Each...Next 循环与 For...Next 循环类似。For Each...Next 不是将语句运行指定的次数,而是对于数组中的每个元素或对象集合中的每一项重复一组语句。这在不知道集合中元素的数目时非常有用。
语法结构如下:
1
2
3
4
5
|
For
Each
element
In
group
[statements]
[
Exit
For
]
[statements]
Next
[element]
|
主要参数:
element:用来枚举集合或数组中所有元素的变量。对于集合,element可能是Variant变量、通用Object变量或任意指定的Automation对象变量。对于数组,element只能是Variant变量。
group:对象集合或数组的名称。
具体实例代码如下:
1
2
3
4
5
6
7
8
|
Dim
Dics
'定义一个变量
Set
Dics = CreateObject(
"Scripting.Dictionary"
)
'定义一个Dictionary对象
Dics.Add
"0"
,
"Athens"
'为Dictionary对象赋值
Dics.Add
"1"
,
"Belgrade"
Dics.Add
"2"
,
"Cairo"
For
Each
Dic in Dics
MsgBox Dics.Item(Dic)
'循环遍历,且输出Dictionary键值
Next
|
最后
以上就是虚幻大雁为你收集整理的VBS中的循环语句的全部内容,希望文章能够帮你解决VBS中的循环语句所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复