Назад к вопросам
Junior — Middle
82
Каким образом можно отследить и обработать ошибку, возникающую при использовании промиса в состоянии rejected?
Ответ от нейросети
sobes.tech AI
Чтобы отследить и обработать ошибку при использовании промиса в состоянии rejected, можно использовать метод .catch() или второй аргумент метода .then().
Пример с использованием .catch():
fetch('https://api.example.com/data')
.then(response => {
if (!response.ok) {
return Promise.reject('Ошибка сети');
}
return response.json();
})
.then(data => {
console.log('Данные:', data);
})
.catch(error => {
console.error('Произошла ошибка:', error);
});
Также можно использовать try...catch внутри асинхронной функции с await:
async function getData() {
try {
const response = await fetch('https://api.example.com/data');
if (!response.ok) {
throw new Error('Ошибка сети');
}
const data = await response.json();
console.log('Данные:', data);
} catch (error) {
console.error('Произошла ошибка:', error);
}
}
getData();
Таким образом, обработка ошибок в rejected состоянии позволяет корректно реагировать на сбои и предотвращать падение приложения.