На этом шаге мы рассмотрим цикл for.
Для организации цикла с помощью оператора while необходимо выполнить три обязательных действия: установить начальное значение переменной цикла, а затем на каждой интерации проконтролировать выполнение условия продолжения цикла и изменить значение переменной цикла.
Оператор for позволяет объединить все три указанные операции, необходимые для работы цикла, в одну. Выражение с оператором for состоит из самого оператора, за которым в круглых скобках следуют три выражения, устанавливающие параметры выполнения цикла. Выражения в круглых скобках отделяются друг от друга точкой с запятой.
for (<НЗ>;<УПЦ>;<Ш>)
{
<действие1>;
<действие2>;
. . . . .
<действиеN>;
}
Первое выражение цикла for устанавливает начальное значение (<НЗ>) счетчика цикла. Второй параметр определяет условие продолжения цикла (<УПЦ>). Это условие проверяется перед каждой новой итерацией цикла и возвращает логическое значение. Если возвращается значение true, то выполняется тело цикла, после чего выполняется третье выражение в параметрах цикла. Третий параметр определяет значение приращения счетчика цикла.
Синтаксис задания оператора for позволяет использовать несколько счетчиков цикла, проверять сложные условия продолжения цикла или последовательно выполнять несколько операций над счетчиками цикла. Если присваиваются значения нескольким счетчикам или выполняется несколько операций, то они записываются последовательно и разделяются запятыми.
Перепишем скрипт из предыдущего шага с использованием цикла for:
. . . . . var s=0,i; for (i=1;i<=10;i++) s+=i; alert ("Сумма = "+s); . . . . .
В заключение поговорим немного об операторе break, с которым мы встречались при изучении условных операторов. Напомним, что там он использовался для выхода из оператора switch. При использовании циклов мы можем также использовать его, но только для выхода из цикла.
Например, можно переписать последний скрипт с использованием оператора break:
. . . . . var s=0,i=1; for (;;) { s+=i++; if (i>10) break; } alert ("Сумма = "+s); . . . . .
Обратите внимание на строку for (;;), которая реализует бесконечный цикл. Понятно, что это не единственный способ организации бесконечного цикла.
Со следующего шага мы начнем рассматривать стандартные объекты и функции.