Зацикливание VBScript
Операторы цикла
Операторы цикла используются для запуска одного и того же блока кода заданное количество раз.
В VBScript у нас есть четыре оператора цикла:
- Оператор For...Next — запускает код указанное количество раз.
- Оператор For Each...Next — запускает код для каждого элемента коллекции или каждого элемента массива.
- Оператор Do...Loop — повторяет цикл, пока или пока условие не станет истинным.
- Оператор While...Wend — не используйте его, вместо этого используйте оператор Do...Loop.
Для...Следующий цикл
Используйте оператор For...Next для запуска блока кода указанное количество раз.
Оператор For указывает переменную счетчика ( i ) и ее начальное и конечное значения. Оператор Next увеличивает переменную-счетчик ( i ) на единицу.
Пример
<html>
<body>
<%
For i = 0 To 5
response.write("The number is " & i & "<br />")
Next
%>
</body>
</html>
Ключевое слово шага
С помощью ключевого слова Step вы можете увеличивать или уменьшать переменную счетчика на указанное вами значение.
В приведенном ниже примере переменная счетчика ( i ) УВЕЛИЧИВАЕТСЯ на два каждый раз, когда цикл повторяется.
For i=2 To 10 Step 2
some code
Next
Чтобы уменьшить переменную счетчика, необходимо использовать отрицательное значение шага . Необходимо указать конечное значение, которое меньше начального значения.
В приведенном ниже примере переменная-счетчик ( i ) УМЕНЬШАЕТСЯ на два каждый раз, когда цикл повторяется.
For i=10 To 2 Step -2
some code
Next
Выход из For...Next
Вы можете выйти из оператора For...Next с помощью ключевого слова Exit For.
For i=1 To 10
If i=5 Then Exit For
some code
Next
Для каждого... следующего цикла
Цикл For Each...Next повторяет блок кода для каждого элемента в коллекции или для каждого элемента массива.
Пример
<html>
<body>
<%
Dim cars(2)
cars(0)="Volvo"
cars(1)="Saab"
cars(2)="BMW"
For Each x In cars
response.write(x & "<br />")
Next
%>
</body>
</html>
Делать...Цикл
Если вы не знаете, сколько повторений вам нужно, используйте оператор Do...Loop.
Оператор Do...Loop повторяет блок кода, пока условие истинно или пока условие не станет истинным.
Повторять код, пока условие истинно
Вы используете ключевое слово While для проверки условия в операторе Do...Loop.
Do While i>10
some code
Loop
Если i равно 9, код внутри цикла выше никогда не будет выполнен.
Do
some code
Loop While i>10
Код внутри этого цикла будет выполнен хотя бы один раз, даже если i меньше 10.
Повторяйте код, пока условие не станет истинным
Вы используете ключевое слово Until для проверки условия в операторе Do...Loop.
Do Until i=10
some code
Loop
Если i равно 10, код внутри цикла никогда не будет выполнен.
Do
some code
Loop Until i=10
Код внутри этого цикла будет выполнен хотя бы один раз, даже если i равно 10.
Выход из цикла Do...
Вы можете выйти из оператора Do...Loop с помощью ключевого слова Exit Do.
Do Until i=10
i=i-1
If i<10 Then Exit Do
Loop
Код внутри этого цикла будет выполняться до тех пор, пока i отличается от 10 и пока i больше 10.
Дополнительные примеры
Как перебрать шесть заголовков в html.
Как сделать простой цикл Do...While .