Sobes.tech
Middle+

Que se passe-t-il en cas d'erreur dans l'une des requêtes dans un for...of avec await ? Comment gérer les erreurs sans arrêter la boucle ?

sobes.tech IA

Réponse de l'IA

Если в цикле 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);
    // Обработка ошибки, но цикл продолжится
  }
}

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