Читайте также:
|
|
Операторы цикла позволяют выполнить некоторую группу операторов произвольное число раз. В языке JavaScript имеется четыре оператора цикла: do…while; while; for; for…in.
Цикл do…while – цикл с постусловием (т.е. условием, проверяемым после выполнения тела цикла). Синтаксис оператора:
do
{
операторы;
}
while (условие);
Этот оператор цикла работает следующим образом. Выполняется тело цикла – операторы внутри фигурных скобок. Затем проверяется условие. Если оно ложно, выполнение оператора прекращается, если истинно – выполнение тела цикла повторяется до тех пор, пока условие не станет ложным. Следует обратить внимание, что тело цикла do…while всегда выполняется хотя бы один раз, даже если условие ложно с самого начала.
Пример. Следующий цикл выведет в окнах сообщений все числа от 1 до 5:
i = 1;
do
{
alert (i);
i++;
}
while (i <= 5);
Следует внимательно следить за тем, чтобы из цикла был выход, в противном случае сценарий зациклится. Так, если в вышеприведённом примере пропустить оператор i++, то переменная i будет всегда иметь значение 1 и цикл будет выполняться бесконечно. К зацикливанию может также привести ошибка в условии: если в том же примере написать по ошибке i >= 0 вместо i <= 5, цикл также никогда не завершится. Это же относится и к другим операторам цикла – while и for.
Цикл while – цикл с предусловием. В отличие от цикла do…while, условие проверяется до первого выполнения тела цикла. Если условие с самого начала ложно, тело цикла не будет выполнено ни разу. Если условие истинно, выполнение тела цикла повторяется до тех пор, пока оно не станет ложным. Синтаксис оператора:
while (условие)
{
операторы;
}
Пример. Следующий пример аналогичен примеру для оператора do…while – выводит в окнах сообщений все числа от 1 до 5:
i = 1;
while (i <= 5)
{
alert (i);
i++;
}
Цикл for – цикл со счётчиком. Синтаксис оператора:
for (начальное_выражение; условие; оператор_приращения)
{
операторы;
}
Он эквивалентен следующей конструкции с оператором while:
начальное_выражение;
while (условие)
{
операторы;
оператор_приращения;
}
Тело цикла for может не выполняться ни разу. Это происходит в том случае, когда условие с самого начала ложно.
Пример. Следующий пример делает то же, что пример для оператора do…while – выводит в окнах сообщений все числа от 1 до 5:
for (i = 1; i <= 5; i++)
{
alert (i);
}
Цикл for…in несколько отличается от трёх предыдущих и не имеет аналогов в языках Паскаль и Си. Он позволяет выполнить какие-либо действия над каждым из элементов массива. Синтаксис оператора:
for (имя_переменной in имя_массива)
{
операторы;
}
Пример. Следующий пример последовательно выводит в окнах сообщений названия дней недели, предварительно занесённые в массив:
var weekdays = new Array ("Sunday", "Monday", "Tuesday", "Wednesday",
"Thursday", "Friday", "Saturday");
for (day in weekdays)
{
alert (day);
}
Заметьте, что оператору for…in не нужно передавать размер массива: он сам «узнаёт» у массива, сколько в нём элементов.
Дата добавления: 2015-07-26; просмотров: 61 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Простейшие сценарии JavaScript | | | Использование объекта Date |