Sobes.tech
Back to questions
Middle+
1

Что произойдёт при ошибке в одном из запросов в for...of с await? Как обработать ошибки не останавливая цикл?

Companies where asked
Tilda

Answer from AI

sobes.tech AI

Если в цикле for...of с await происходит ошибка в одном из запросов, выполнение цикла прервётся, и ошибка выбросится наружу, если её не обработать.

Чтобы обработать ошибки в каждом запросе, не останавливая цикл, можно использовать try...catch внутри цикла:

for (const item of items) {
  try {
    const result = await asyncOperation(item);
    console.log('Успех:', result);
  } catch (error) {
    console.error('Ошибка при обработке', item, error);
    // Обработка ошибки, но цикл продолжится
  }
}

Таким образом, ошибки каждого запроса обрабатываются локально, и цикл продолжает выполнение для остальных элементов.