Встречается на собеседованиях • сегодня
Можно ли организовать цепочку Promise с большим количеством then и catch
Да, можно организовать цепочку Promise с любым количеством then и catch. Каждый then обрабатывает успешное выполнение предыдущего, а catch перехватывает ошибки на любом этапе цепочки.
javascript
fetch('url')
.then(response => response.json())
.then(data => processData(data))
.then(result => saveResult(result))
.catch(error => console.error('Ошибка:', error));Нюансы:
catchперехватывает ошибки из всех предыдущихthen.- Можно добавлять несколько
catchдля разных этапов обработки. - Если в цепочке нет
catch, ошибка "упадёт" в глобальный обработчик (unhandledrejection). - Возвращаемое значение из
then/catchстановится входным для следующегоthen.
Пример с несколькими catch:
javascript
fetch('url')
.then(res => res.json())
.catch(err => fallbackData()) // Ловим ошибку парсинга
.then(data => process(data))
.catch(err => console.error(err)); // Ловим ошибку process
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы