Back to questions
Wildberries
Middle
1
Promise.reject('Api Error') .then(data => console.log('ok')) .catch(error => { console.log(error); return '1'; }) .then(data => { console.log(data); });
Companies where asked
Answer from AI
sobes.tech AI
Разбор кода:
Promise.reject('Api Error')
.then(data => console.log('ok'))
.catch(error => {
console.log(error); // Выведет 'Api Error'
return '1';
})
.then(data => {
console.log(data); // Выведет '1'
});
Объяснение:
Promise.reject('Api Error')создаёт отклонённый промис с ошибкой 'Api Error'.- Первый
.thenпропускается, так как промис отклонён. .catchловит ошибку, выводит её в консоль и возвращает строку'1'.- Возвращённое значение
'1'становится успешным результатом для следующего.then. - Второй
.thenполучает'1'и выводит её.
Итог в консоли:
Api Error
1
Таким образом, .catch не только обрабатывает ошибку, но и преобразует цепочку обратно в успешную, передавая значение дальше.