ForEach

ForEach

Метод forEach() можно использовать, когда вам необходимо совершить одну и ту же операцию над всеми элементами массива.

Хотя в JavaScript уже есть возможность делать это, используя цикл for, метод forEach() — это отличная альтернатива с рядом преимуществ:

✓  Использование метода forEach() является декларативным способом обозначить нашу операцию.

✓  Позволяет удобно получать элемент в текущей итерации, без необходимости всякий раз обращаться к массиву по индексу.

Однако вместе с тем мы получаем и несколько недостатков:

✓  В forEach() не будут работать return, break и continue, а следовательно, мы никак не можем прервать или пропустить итерацию. Потому, если для решения задачи необходимо воспользоваться каким-либо из этих операторов, придётся использовать обычный цикл for.

✓  forEach() обрабатывает элементы массива в прямом порядке, то есть мы не можем пройти по массиву с конца.

💡 Метод forEach() автоматически встроен в любой массив.

Web-технологии

545 постов5.8K подписчиков

Правила сообщества

1. Не оскорблять других пользователей

2. Не пытаться продвигать свои услуги под видом тематических постов

3. Не заниматься рекламой

4. Никакой табличной верстки

5. Тег сообщества(не обязателен) pikaweb

0
Автор поста оценил этот комментарий

В чем преимущества использования .forEach перед for...of? Если я правильно понимаю, они делают то же самое.

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

forEach вызывает коллбек для каждого элемента массива, for..of можно остановить на любой итерации

2
DELETED
Автор поста оценил этот комментарий
И почему декларативное объявление цикла это преимущество? Там была какая-то предыстория?
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

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

У метода массива ForEach, в контексте данного поста, есть недостаток в том что мы не можем прервать его работу в какой-то определенный момент и он в любом случае будет вызывать коллбек на каждый элемент массива пока не дойдет до конца.

1
Автор поста оценил этот комментарий
Разрешите докапаться, continue легко реализуется через return.
раскрыть ветку (1)
Автор поста оценил этот комментарий

+/- , такая мысль способна на существование

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества