Ответ
then и catch — методы промисов для обработки результатов.
- then — обрабатывает успешное выполнение (
resolve) и может принимать два колбэка: для успеха и ошибки (но второй редко используют). - catch — ловит только ошибки (
reject), аналогиченthen(null, errorHandler).
Пример:
fetch('url')
.then(response => response.json()) // Успех
.catch(error => console.error(error)); // Ошибка
Нюансы:
catchперехватывает ошибки в цепочке выше.- Если в
thenвторой колбэк (для ошибки), он сработает только на ошибку в предыдущем промиссе, но не в самом колбэке.catchловит все.
Лучше использовать catch для единой обработки ошибок.