Sobes.tech
Middle

Co się stanie, jeśli nie obsłużysz błędów w Promise (bez .catch)?

sobes.tech AI

Odpowiedź od AI

Если в Promise не обработать ошибку с помощью .catch(), то ошибка останется необработанной. В современных средах выполнения (например, в браузерах или Node.js) это приведёт к появлению предупреждения или ошибки "Unhandled Promise Rejection".

Последствия:

  • В браузере может появиться сообщение в консоли, что ошибка не была обработана.
  • В Node.js необработанные отклонения промисов могут привести к завершению процесса с ошибкой (в зависимости от версии и настроек).

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

Пример правильной обработки:

fetch('/api/data')
  .then(response => response.json())
  .catch(error => {
    console.error('Ошибка при загрузке данных:', error);
  });