> Что такое промисы в JavaScript и как они работают (JavaScript)
Уровень: junior · Роль: frontend · Категория: Технические вопросы
Компании: Иннотех, Cyber Interactive, Kvando Technologies, Soft_Media_Group, ООО Премиум ИТ Солюшен, ЛитРес, IT-One, Софт Медиа Групп, Библио-Глобус, Сбер, Globaldrive, Purrweb, SmartWay, Яндекс
Стек: JavaScript
> Пример ответа
Промис (Promise) в JavaScript - это объект, представляющий асинхронную операцию, которая может завершиться в будущем. Он находится в одном из трёх состояний: pending (ожидание), fulfilled (выполнено успешно) или rejected (отклонено с ошибкой). Промис позволяет избежать «ада колбэков» и упрощает работу с асинхронным кодом.
Как работает промис: при создании он принимает функцию-исполнитель с двумя параметрами: resolve (вызывается при успехе) и reject (при ошибке). После вызова одного из них промис переходит в финальное состояние. Для обработки результата используются методы .then() (для успеха), .catch() (для ошибки) и .finally() (выполняется в любом случае).
Пример:
JAVASCRIPTconst fetchData = new Promise((resolve, reject) => {setTimeout(() => {const success = true;if (success) {resolve('Данные получены');} else {reject('Ошибка загрузки');}}, 1000);});fetchData.then(data => console.log(data)) // "Данные получены".catch(error => console.error(error)).finally(() => console.log('Завершено'));
Промисы также поддерживают цепочки вызовов (chaining) и статические методы, такие как Promise.all() (ждёт все промисы) и Promise.race() (ждёт первый завершённый).
> Похожие задачи по frontend
Что такое каррирование
В чем разница между var, const и let в JavaScript
Что такое всплытие (hoisting) в JavaScript?
Сколько типов данных в JavaScript и какие они
> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?
Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью