□ <Условие> содержит логическое выражение. Пока логическое выражение возвращает значение true, выполняются выражения внутри цикла;
□ <Приращение> задает изменение переменной-счетчика при каждой итерации.
Более формально, последовательность работы цикла for такова:
1. Переменной-счетчику присваивается начальное значение.
2. Проверяется условие — если оно истинно, выполняются выражения внутри цикла, а в противном случае осуществляется выход из цикла.
3. Переменная-счетчик изменяется на величину, указанную в <приращении>.
4. Осуществляется переход к пункту 2.
Цикл выполняется до тех пор, пока <Условие> не вернет false. Если этого не случится, цикл будет бесконечным.
<Приращение> может не только увеличивать значение переменной-счетчика, но и уменьшать. Выведем все числа от 100 до 1:
for (i=100; i>0; i--) document.write(i + "<BR>");
<Приращение> может изменять значение переменной-счетчика не только на единицу. Выведем все четные числа от 1 до 100:
for (i=2; i<101; i+=2) document.write(i + "<BR>");
3.13.2. Цикл while
Выполнение выражений в цикле while продолжается до тех пор, пока логическое выражение истинно. Имеет следующий формат:
<Начальное значением-; while (<Условие>) { <Выражения> ; <Приращение >; }
Цикл while работает следующим образом:
1. Переменной-счетчику присваивается начальное значение.
2. Проверяется условие — если оно истинно, выполняются выражения внутри цикла, а в противном случае выполнение цикла завершается.
3. Переменная-счетчик изменяется на величину, указанную в <Приращении>.
4. Осуществляется переход к пункту 2.
Выведем все числа от 1 до 100, используя цикл while (листинг 3.21).
Листинг 3.21. Цикл while
var i=1;
while (i<101) {
document.write(i + "<BR>");
i++;
}
Внимание!
Если<приращение> не указано, то цикл будет бесконечным.
В <Приращении> не обязательно должна быть арифметическая операция. Например, при работе с базами данных в качестве <Приращения> будет перемещение к следующей строке, а условием выхода из цикла — отсутствие новых строк в базе данных. В этом случае <Начальным значением> будет первая строка базы данных.
3.13.3. Цикл do...while
Выполнение выражений в цикле do_while продолжается до тех пор, пока логическое выражение истинно. Но в отличие от цикла while условие проверяется не в начале цикла, а в конце. По этой причине выражения внутри цикла do...whiie один раз обязательно выполнятся. Конструкция имеет следующий формат:
<Начальное значение>;
do {
<Выражения>;
<Приращение>;
} while (<Условие>);
Последовательность работы цикла do...while:
1. Переменной-счетчику присваивается начальное значение.
2. Выполняются выражения внутри цикла.
3. Переменная-счетчик изменяется на величину, указанную в <Приращении>.
4. Проверяется условие, и если оно истинно, осуществляется переход к пункту 2, а если нет — цикл завершается.
Выведем все числа от 1 до 100, используя цикл do...while (листинг 3.22).
Листинг 3.22. Цикл do…while
var i=1;
do {
document.write(i + "<BR>");
i++;
} while (i<101);
Внимание!
Если<приращение> не указано, то цикл будет бесконечным.
В <приращении> не обязательно должна быть арифметическая операция. Например, при работе с базами данных в качестве <приращения> будет перемещение к следующей строке, а условием выхода из цикла — отсутствие следующей строки в базе данных. В этом случае <начальным значением> будет получение первой строки базы данных.