JavaScript с нуля. Урок #6. Циклы

Премиум
Статус
Оффлайн
Регистрация
3 Дек 2017
Сообщения
222
Реакции[?]
201
Поинты[?]
0
Сегодняшняя тема - циклы. Циклы позволяют уменьшить количество повторяющегося кода.

Есть 3 вида конструкции цикла: for, while, do...while
Наверное, самый основной вид циклов - безусловно, for.
Он принимает 3 параметра:
  • действие, выполняемое один раз при начале выполнения цикла,
  • условие, при котором продолжается выполнение цикла,
  • действие в конце каждого повторения (итерации) цикла.
Вот пример цикла for:
Код:
for (let i = 0; i < 5; i++) {
    console.log(i);
}
/*
Вывод:
0
1
2
3
4
*/
Этот цикл сначала воздает переменную i, равную 0. Затем, проверяет условие i < 5, и если оно верно, то выводит i в консоль, и увеличивает ее значение на 1.
Если условие не равно, то есть i >= 5, то цикл перестает повторяться.
Здесь все чуть проще. Цикл повторяется только если условие верно.
Код:
let i = 0;
while (i < 5) {
console.log(i);
i++;
}
Этот код выведет тоже самое, что и в примере в спойлере выше.
Этот вид цикла работает почти также, как while, с одним лишь отличием: цикл while сначала проверяет условие, а затем выполняется код. Здесь же, сначала выполняется код, а затем проверяется условие.
Код:
let i = 0;
do {
console.log(i);
i++;
} while (i < 5)
Этот код, в отличии от предыдущего, выведет на 1 строку больше, так как когда i == 5, код уже выполнится, а условие будет проверено только после этого.
Операторы break и continue позволяют управлять итерациями цикла, изнутри него самого.
Break - прерывает выполнение цикла
Continue - пропустить текущую итерацию
Код:
let i = 0;
while (true) { // бесконечный цикл
    if (i == 2) {
        continue;
    }
    else if (i == 10) {
        break;
    }
    console.log(i);
    i++;
}
/*
Вывод:
0
1
3
4
5
6
7
8
9
*/
Когда i == 2, код пропускает итерацию, и не успевает вывести i. Когда i == 10, цикл прерывается.
___________________________________________________________________________________________________
Если у вас еще остались вопросы, или вы нашли ошибку - пишите, отвечу, исправлю
 
Сверху Снизу