Назад к вопросам
СБЕР
Junior — Middle
85
Можешь объяснить, что такое Promise и как он используется в асинхронном программировании?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Promise — это объект в JavaScript, который представляет результат асинхронной операции, которая может завершиться успешно или с ошибкой в будущем. Promise позволяет писать асинхронный код более читаемо, избегая «ад колбеков».
Promise имеет три состояния:
- pending (ожидание) — начальное состояние,
- fulfilled (выполнено) — операция завершилась успешно,
- rejected (отклонено) — операция завершилась с ошибкой.
Использование Promise позволяет цепочкой вызывать методы .then() для обработки успешного результата и .catch() для обработки ошибок.
Пример:
function fetchData() {
return new Promise((resolve, reject) => {
setTimeout(() => {
const success = true;
if (success) {
resolve('Данные получены');
} else {
reject('Ошибка при получении данных');
}
}, 1000);
});
}
fetchData()
.then(result => {
console.log(result); // 'Данные получены'
})
.catch(error => {
console.error(error);
});
Таким образом, Promise помогает управлять асинхронными операциями и их результатами более удобно и понятно.