ZetCode

VBScript 循环

最后修改于 2025 年 2 月 19 日

在本文中,我们将学习如何在 VBScript 中使用循环。循环允许您重复执行一段代码。我们将使用 WScript.Echo 输出结果,并使用 cscript 运行脚本。

For...Next 循环

For...Next 循环用于执行一段代码特定的次数。

for_next_loop.vbs
Dim i

For i = 1 To 5
    WScript.Echo "Iteration: " & i
Next

此示例使用 For...Next 循环输出迭代次数五次。

For Each...Next 循环

For Each...Next 循环用于遍历集合或数组中的每个元素。

for_each_loop.vbs
Dim fruits(2)
fruits(0) = "Apple"
fruits(1) = "Banana"
fruits(2) = "Cherry"

Dim fruit

For Each fruit In fruits
    WScript.Echo "Fruit: " & fruit
Next

此示例遍历 fruits 数组并输出每个元素。

Do While...Loop

Do While...Loop 只要条件为真,就执行一段代码。

do_while_loop.vbs
Dim counter
counter = 1

Do While counter <= 5
    WScript.Echo "Counter: " & counter
    counter = counter + 1
Loop

此示例使用 Do While...Loop 输出 counter 的值,直到它达到 5。

Do Until...Loop

Do Until...Loop 执行一段代码,直到条件为真。

do_until_loop.vbs
Dim number
number = 1

Do Until number > 5
    WScript.Echo "Number: " & number
    number = number + 1
Loop

此示例使用 Do Until...Loop 输出 number 的值,直到它超过 5。

While...Wend 循环

While...Wend 循环类似于 Do While...Loop,但灵活性较低。

While...Wend 循环仅允许在循环开始时进行简单的条件检查。这意味着它只能在循环开始时退出,而无法在循环内动态控制流程。

while_wend_loop.vbs
Dim count
count = 1

While count <= 5
    WScript.Echo "Count: " & count
    count = count + 1
Wend

此示例使用 While...Wend 循环输出 count 的值,直到它达到 5。

嵌套循环

您可以嵌套循环以创建更复杂的迭代。

nested_loops.vbs
Dim i, j

For i = 1 To 3
    For j = 1 To 2
        WScript.Echo "i: " & i & ", j: " & j
    Next
Next

此示例使用嵌套的 For...Next 循环输出 ij 的值。

退出循环

您可以使用 Exit 语句提前退出循环。

exit_loop.vbs
Dim k

For k = 1 To 10
    If k = 6 Then
        Exit For
    End If
    WScript.Echo "k: " & k
Next

此示例在 k 等于 6 时退出 For...Next 循环。

带 Step 的循环

Step 关键字允许您指定循环的增量。

loop_with_step.vbs
Dim m

For m = 1 To 10 Step 2
    WScript.Echo "m: " & m
Next

此示例使用步长为 2 的 For...Next 循环输出了 1 到 10 之间的奇数。

在本文中,我们探讨了如何在 VBScript 中使用循环。我们介绍了 For...NextFor Each...NextDo While...LoopDo Until...LoopWhile...Wend、嵌套循环、退出循环以及带 Step 的循环。循环对于重复任务以及遍历集合或数组至关重要。

作者

我叫 Jan Bodnar,我是一名充满热情的程序员,拥有丰富的编程经验。我自 2007 年以来一直在撰写编程文章。迄今为止,我已撰写了 1400 多篇文章和 8 本电子书。我在编程教学方面拥有十多年的经验。

所有 VBScript 教程列表。