Инструкция continue
Инструкция continue — младший брат break. Она завершает не весь цикл, а только текущую итерацию: пропускает остаток блока, и цикл сразу переходит к следующей итерации.
Этот цикл выводит числа от 1 до 10, но пропускает числа, кратные 3:
for (let i = 1; i <= 10; i++) {
if (i % 3 === 0) {
continue;
}
console.log(i);
}Вывод:
1
2
4
5
7
8
10Для 3, 6 и 9 условие истинно, и continue пропускает console.log(i) под ним. Затем цикл продолжается как обычно: выполняется шаг i++, и следующая итерация начинается со следующего числа.
Инструкция continue обычно стоит в начале блока и отсеивает элементы, с которыми вы не хотите иметь дела: «этот меня не интересует, переходим к следующему». Остаток блока тогда обрабатывает только интересные элементы.
Будьте осторожны с continue в цикле while. Она сразу возвращается к условию, поэтому если строка, увеличивающая счётчик, стоит ниже continue, она тоже пропускается. Тогда счётчик никогда не меняется, и цикл не заканчивается. В цикле for шаг выполняется всегда, поэтому там такого случиться не может.
Задание
- 1
Перед походом в магазин вы хотите вывести только то, чего нет дома. Напишите цикл
for...ofпоshoppingList. В начале его блока напишитеif, который пропускает продукт черезcontinue, если массивatHomeего содержит. Используйте.includes(). - 2
После
if, всё ещё внутри цикла, выведитеКупить:и продукт. Вывод:Купить: молоко,Купить: яйцаиКупить: яблоки, каждое на своей строке.