Встречается на собеседованиях • сегодня

Почему for of предпочтительнее forEach

for...of и forEach оба перебирают элементы массива, но есть ключевые различия:

  1. Прерывание итерации: for...of можно прервать с помощью break или continue, а forEach нет.
js
for (const item of [1, 2, 3]) {
  if (item === 2) break; // Работает
  console.log(item);
}

[1, 2, 3].forEach(item => {
if (item === 2) break; // Ошибка SyntaxError
});

text

2. **Асинхронность**: `for...of` корректно работает с `await`, а `forEach` выполняет колбэки параллельно.

3. **Производительность**: В некоторых движках `for...of` быстрее, особенно на больших массивах.

4. **Гибкость**: `for...of` работает не только с массивами, но и с любыми итерируемыми объектами (Map, Set, строки и т.д.).

`forEach` удобен для простых операций, но `for...of` более универсален.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы