Циклы в JavaScript

При написании скриптов часто возникает необходимость выполнять однотипные действия многократно. Например, может потребоваться вывести все товары из списка по очереди или перебрать числа от 1 до 10, выполняя для каждого из них одинаковый код.

Для таких случаев в программировании предусмотрены циклы. Циклы позволяют повторять определённый блок кода несколько раз, что делает код более компактным и удобным для работы с большими наборами данных или повторяющимися задачами.

Цикл While

Цикл while — это способ организации повторяющихся действий в JavaScript. В отличие от цикла for, где количество итераций обычно известно заранее, цикл while используется, когда нужно выполнять блок кода до тех пор, пока выполняется определённое условие.

let i = 0;
while (i < 5) {
    console.log("Итерация номер: " + i);
    i++;
}

i++ — это оператор инкремента в JavaScript. Он увеличивает значение переменной i на 1. Это сокращённая запись для выражения i = i + 1

Цикл while полезен, когда количество итераций неизвестно заранее, и выполнение цикла зависит от какого-то условия.

Например:

  1. Чтение данных из файла или потока до конца.

  2. Ожидание изменения состояния (например, завершение анимации).

  3. Работа с пользовательским вводом до тех пор, пока не будет введено корректное значение.

Цикл do…while

Цикл do...while — это разновидность цикла while в JavaScript, которая гарантирует, что тело цикла выполнится хотя бы один раз, даже если условие изначально равно false. Это отличает его от обычного while, где тело цикла может не выполниться ни разу, если условие false с самого начала.

do {
  // тело цикла
} while (condition);

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

Такой синтаксис полезен, когда нужно, чтобы тело цикла выполнилось хотя бы один раз, даже если условие изначально false. Однако на практике чаще используется цикл с предусловием: while(…) {…}, где условие проверяется до выполнения тела цикла.

let i = 0;
do {
  alert( i );
  i++;
} while (i < 3);

Цикл For

Oдин из самых популярных и часто используемых циклов в JavaScript. Он идеально подходит для ситуаций, когда известно точное количество итераций, которые нужно выполнить.

for (начало; условие; шаг) {
  // ... тело цикла ...
}

Простой пример работы цикла for - В этом примере цикл выводит значения i с помощью alert(i) для i от 0 до 2 (не включая 3):

for (let i = 0; i < 3; i++) {
  alert(i); // Выведет 0, затем 1, затем 2
}

Детальный разбор каждой части цикла

  1. Начало: let i = 0 — выполняется один раз при входе в цикл. Здесь создаётся переменная i и присваивается значение 0

  2. Условие: i < 3 — проверяется перед каждой итерацией. Если условие истинно (true), цикл продолжает работать. Если ложно (false) — цикл останавливается

  3. Тело: alert(i) — выполняется на каждой итерации, пока условие истинно. В данном случае выводит текущее значение i.

  4. Шаг: i++ — выполняется после тела цикла на каждой итерации. Увеличивает значение i на 1