Перейти к основному содержимому
Модуль 5 · Урок 1 из 417/32 в курсе~10 min
Уроки модуля (1/4)

Циклы: for и while

Циклы позволяют повторять блок кода. В JavaScript есть три классические формы: for, while, do…while. Используйте первый, когда вы знаете (или можете вычислить) количество итераций, второй два, когда вам просто нужно условие выхода.

Классический for

Три части, разделенные ;: инициализация, условие продолжения, шаг.

JS
for (let i = 0; i < 4; i++) {
  console.log(i); // 0, 1, 2, 3
}

Эквивалент в стиле while:

JS
let i = 0;
while (i < 4) {
  console.log(i);
  i++;
}

while

Проверяет условие перед каждой итерацией.

JS
let n = 10;
while (n > 0) {
  n = Math.floor(n / 2);
}
n; // 0

Если условие уже ложно в первом раунде, тело никогда не выполняется.

do…while

Проверяет условие after: тело всегда выполняется хотя бы один раз.

JS
let tentativi = 0;
do {
  tentativi++;
} while (Math.random() < 0.0001); // pratica: provare almeno una volta

tentativi; // >= 1

Попробуйте это

Упражнение#js.m5.l1.e1
Попыток: 0Загрузка…

Определите функцию sumUpTo(n)`, которая возвращает сумму 1+2+...+n (положительное целое число). Используйте классику для.

Загрузка редактора…
Показать подсказку

Начните общее количество с 0, затем прокрутите i от 1 до n включительно.

Решение доступно после 3 попыток

Обзор упражнения

Упражнение#js.m5.l1.e2
Попыток: 0Загрузка…

Определите `halveUntilOne(n)`, который, учитывая положительное целое число, возвращает, сколько раз вам нужно разделить n на 2 (с помощью Math.floor), прежде чем оно достигнет 1 или меньше. Используйте некоторое время.

Загрузка редактора…
Показать подсказку

Возьмите счетчик и разделите n на 2, пока n > 1.

Решение доступно после 3 попыток