Циклы — специальные конструкции для многократного выполнения кода. В JavaScript три основных типа циклов: for, while и do…while. Рассмотрим каждый.
Цикл for
Синтаксис цикла for:
for (начальное_значение; условие; изменение_переменной) {
// Код, который будет выполняться в цикле
}
- начальное_значение: Инициализация переменной управления циклом. Обычно числовая (хотя может быть и другого типа). Например: let i = 0;
- условие: Выражение, проверяемое перед каждой итерацией. Если истинно — цикл продолжается; если ложно — завершается. Пример: i < 10;
- изменение_переменной: Выражение, выполняемое после каждой итерации, обычно изменяющее значение управляющей переменной. Например: i++;
Пример: Вывод чисел от 0 до 9:
for (let i = 0; i < 10; i++) {
console.log(i);
}
Для единственной строки кода фигурные скобки можно опустить, но это не рекомендуется для читаемости.
Пример с другими условиями: Вывод чисел от 100 до 5 с шагом -25:
for (let i = 100; i > 5; i /= 2) {
console.log(i);
}
Цикл while
Цикл while выполняет код, пока условие истинно. Синтаксис:
let j = 0; // Инициализация переменной
while (j < 10) {
console.log(j);
j++; // Изменение переменной
}
В отличие от for, инициализация и изменение переменной происходят вне цикла. Фигурные скобки обычно обязательны.
Пример с другим условием:
let j = 1000;
while (j >= 100) {
console.log(j);
j -= 100;
}
Пример с булевой переменной:
let isRunning = true;
while (isRunning) {
// Код, который будет выполняться, пока isRunning = true
// ... логика, меняющая isRunning на false (иначе — бесконечный цикл)
}
Предупреждение: Бесконечные циклы (условие всегда истинно) могут зависать компьютер. Убедитесь, что условие цикла while в итоге станет ложным.
Цикл do…while
Цикл do…while похож на while, но гарантированно выполняется хотя бы один раз. Синтаксис:
let x = 100;
do {
console.log(x);
} while (x < 50);
Код внутри do выполняется, затем проверяется условие в while.
Операторы break и continue
- break: Выход из цикла, независимо от условия.
- continue: Пропуск текущей итерации и переход к следующей.
Пример с break:
for (let i = 10; i <= 20; i += 2) {
if (i > 15) {
break;
}
console.log(i);
}
Пример с continue:
for (let i = 10; i <= 20; i++) {
if (i % 2 === 0) {
continue;
}
console.log(i);
}
Перебор массива с помощью цикла for
Цикл for удобен для перебора массивов.
let myArray = [5, 7, 38, 9, "строка"];
for (let i = 0; i < myArray.length; i++) {
console.log(`Элемент ${i + 1}: ${myArray[i]}`);
}
Пример с модификацией элементов:
for (let i = 0; i < myArray.length; i++) {
myArray[i] *= 2;
console.log(`Элемент ${i + 1}: ${myArray[i]}`);
}
В JavaScript три основных типа циклов: for, while и do…while. Выбор зависит от задачи. Операторы break и continue управляют выполнением цикла. Цикл for удобен для перебора массивов.