For(инициализация; проверка; инкремент)

Инструкция

или, по другому:

for ( [начальное выражение] ; [условие] ; [выражение обновления] )

{

Код

}

Здесь квадратные скобки лишь указывают на то, что заключенные в них параметры не являются обязательными. Все, что находится в круглых скобках справа от ключевого слова for, называется заголовком оператора цикла, а содержимое фигурных скобок — его телом.

Выражение инициализация вычисляется один раз перед началом цикла. JavaScript также допускает, чтобы выражение инициализация было инструкцией объявления переменной var, поэтому можно одновременно объявить и проинициализировать счетчик цикла.

Выражение проверки вычисляется перед каждой итерацией и определяет, будет ли выполняться тело цикла. Если результат проверки равен true, выполняется тело цикла.

В конце цикла вычисляется выражение инкремента (шага цикла). Обычно это либо выражение присваивания, либо выражение, использующее оператор ++ или --.

Пример цикла, выводящий числа от 0 до 9:

for(var count = 0; count < 10; count++)

document.write(count + "<br>");

Обратите внимание, что этот синтаксис помещает всю важную информацию о переменной цикла в одну строку, делая работу цикла более понятной. Кроме того, помещение выражения инкремента в инструкцию for само по себе упрощает тело цикла до одной инструкции; нам даже не потребовалось ставить фигурные скобки для формирования блока инструкций.

Конечно, циклы могут быть значительно более сложными, чем в этих простых примерах, и иногда на каждой итерации цикла изменяется несколько переменных. Эта ситуация – единственный случай в JavaScript, когда часто применяется оператор «запятая» – он позволяет объединить несколько выражений инициализации и инкрементирования в одно выражение, подходящее для использования в цикле for. Например:

for(i = 0, j = 10; i < 10; i++, j--)

sum += i * j;

Вычислим сумму всех целых положительных чисел от 1 до 15:

var s = l

for (i = 1; i <= 15; i++) {

s = s + i

}

Заметим, что счетчик циклов может быть не только возрастающим, но и убывающим.

/* Вычисляем n! */

var z = 1 // z хранит результат n!

if (n >1) {

for (i = 2 ; i <= n;i++){

z=z*i; }}

Для принудительного (то есть не по условию) выхода из цикла используется оператор break (прерывание). Если вычислительный процесс встречает этот оператор в теле оператора цикла, то он сразу же завершается без выполнения последующих выражений кода в теле и даже выражения обновления. Обычно оператор break применяется при проверке некоторого дополнительного условия, выполнение которого требует завершения цикла, несмотря на то, что условие в заголовке цикла еще не выполнено. Типовая структура оператора цикла с использованием break имеет следующий вид:

for ( [начальное выражение] ; [условие1] ; [выражение обновления] )

{ код

i f (условие2){

Код

Break

}

Код

}

Для управления вычислениями в операторе цикла можно также использовать оператор continue (продолжение). Так же, как и break, этот оператор применяется в теле оператора цикла вместе с оператором условного перехода. Однако, в отличие от break, оператор continue прекращает выполнение последующего кода, выполняет выражение обновления и возвращает вычислительный процесс в начало оператора цикла, где производится проверка условия, указанного в заголовке.

Инструкция for/in

Ключевое слово for в JavaScript также используется в инструкции for/in. Эта инструкция – несколько иной вид цикла, имеющего следующий синтаксис:








Дата добавления: 2016-01-09; просмотров: 1330;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.