5 ЛЕТ! Вот как долго я программировал на JavaScript. Вы могли бы подумать, что я эксперт по петлям, верно? Ну видимо нет. В этом коротком посте я расскажу о трех ключевых моментах, которые я обнаружил в цикле forEach в JavaScript.

  1. Он всегда возвращает undefined
  2. Вы не можете пропустить итерацию с ключевым словом continue.
  3. Вы не можете завершить цикл досрочно с помощью ключевого слова break.

Теперь позвольте мне рассказать вам о том, как я наткнулся на эти три препятствия во время моего путешествия по циклу forEach.

Мы с другом вместе работали над вопросом Leetcode (Две суммы), и я пытался вернуть значение из цикла forEach. Ничего слишком сложного, правда? Я запускал свой код НЕСКОЛЬКО раз, но значение так и не было возвращено. Как это могло быть возможно?!

В этот момент я начинаю сомневаться, достоин ли я вообще кодирования. Как только я преодолел свой стыд и понял, что не добился большого прогресса, я решил немного покопаться в цикле forEach и вот что я нашел.

1. Всегда возвращает значение Undefined

Если вы похожи на меня, вы, возможно, узнали это на собственном горьком опыте. При попытке вернуть значение из цикла forEach вы не найдете искомое значение. Несмотря ни на что, он ТОЛЬКО возвращает неопределенное значение.

2. Вы не можете пропустить итерацию с помощью «Продолжить»

Оператор continue используется для пропуска текущей итерации и перехода к следующей итерации внутри цикла. К сожалению, в цикле forEach это невозможно.

Вместо этого вы можете использовать оператор return. Хотя он не вернет значения, кроме undefined, он позволит вам пропустить текущую итерацию.

3. Вы не можете завершить цикл досрочно с помощью «Break»

Это была проблема, с которой я сталкивался много раз, и я не мог понять, что я делаю неправильно. Оператор break вызовет ошибку при использовании внутри цикла forEach. В качестве альтернативы можно использовать традиционный цикл for, и break работает отлично.

Это все люди!

Я надеюсь, что этот пост был информативным. Следите за новыми статьями о JavaScript. Спасибо за прочтение!

Мне нравится говорить об инвестициях, личных финансах и JavaScript. Если вам интересно поболтать о чем угодно, давайте общаться в Твиттере: @dariusthedev