====== Цикл while ====== Цикл ''while'' будет выполнять код внутри блока до тех пор, пока условие не окажется "ложным" или не будет вызвано ''break''. **Если оно изначально было "ложным", то код не выполнится.** while (условие) { // Какое-либо действие, которое нужно повторить } ====== Цикл do...while ====== Цикл ''do ... while'' такой же, как и ''while'', за тем исключением, что если изначально значение было "ложным", то код выполнится хотя бы один раз. Применяется ситуативно. do { ... } while (условие); ====== Цикл for ====== Цикл ''for(...;...;...)'' был сделан для повтора какого-то действия или преребора значений переменной определенное количество раз. // Общий вид: for (начало;условие;шаг) { // действие } // начало - выполнится один раз при входе в цикл // условие - проверяется перед каждой итерацией (повторением), если условие "ложно" - останавливает цикл // шаг - выполняется после действия в блоке перед проверкой условия цикла for (let i=0; i<3; i++) { } Еще бы хотелось затронуть цикл ''for ... in'', который перебирает значения чере перечисляемые свойства объекта. let obj = {"a":1, "b":2, "c":3}; for (item in obj) { console.log("Ключ: " + item + "; Значение: " + obj[item]); } ====== Как работают break и continue в циклах ====== * ''break'' - заканчивает выполнение цикла (совершает выход из него); let i = 0; while (i < 20) { if (i == 5) break; console.log(i); } // Выведет: // все значения от 0 до 4 (5 чисел), но выполнит 6 проходов, так как код ниже break не выполнится, а console.log выводит нам числа * ''continue'' - переводит цикл на новую итерацию, пропуская код в блоке цикла ниже. Возможно сказано не так понятно, но если посмотреть код ниже, то все прояснится (надеюсь): let i = 0; while (i < 20) { if (i == 5) continue; console.log(i); } // Выведет: // все значения от 0 до 19 (потому что 20 не больше 20, они равны) // кроме 5