> Можно ли создать функцию для запроса продуктов, которая возвращает промис (JavaScript)
Уровень: senior · Роль: frontend · Категория: Технические вопросы
Компании: ЛигаСтавок
Стек: JavaScript
> Пример ответа
Да, можно. Вот пример функции, которая имитирует запрос к API и возвращает промис с массивом продуктов:
JAVASCRIPTfunction fetchProducts() {return new Promise((resolve, reject) => {// Имитация асинхронного запроса (например, fetch)setTimeout(() => {const products = [{ id: 1, name: 'Ноутбук', price: 50000 },{ id: 2, name: 'Мышь', price: 1500 },{ id: 3, name: 'Клавиатура', price: 3000 }];// Успешный ответresolve(products);// В случае ошибки: reject(new Error('Не удалось загрузить продукты'));}, 1000);});}// Использование:fetchProducts().then(products => console.log('Продукты:', products)).catch(error => console.error('Ошибка:', error));
В реальном проекте вместо setTimeout обычно используется fetch или axios для HTTP-запроса к серверу. Функция возвращает промис, что позволяет удобно работать с асинхронным кодом через then/catch или async/await.
> Похожие задачи по frontend
Как реализовать функцию promisify в JavaScript
Как реализовать таймаут с abort для запроса в JavaScript
Как добавить новый метод в стандартный объект Array через prototype в JavaScript
Как получить ключ элемента в JavaScript
> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?
Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью