Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Справочник JavaScript

Promise.resolve

Создаёт промис, который сразу выполнен с заданным значением.

Доступно с: ES2015

Синтаксис

Promise.resolve(value)

Параметры

ПараметрТипОписание
valueanyЗначение, которым промис будет выполнен.

Возвращаемое значение

PromiseУже выполненный промис.

Примеры

Готовый промис:

const promise = Promise.resolve('cached data');
 
console.log(await promise);

Результат:

cached data

Функция, которая всегда возвращает промис:

const cache = new Map([['anna', { name: 'Anna' }]]);
 
function getUser(id) {
  if (cache.has(id)) return Promise.resolve(cache.get(id));
  return new Promise((resolve) => setTimeout(() => resolve({ name: 'Loaded' }), 50));
}
 
console.log((await getUser('anna')).name);
console.log((await getUser('oleg')).name);

Результат:

Anna
Loaded

Примечания

Если передать промис, он вернётся без изменений. Внутри async-функции Promise.resolve не нужен: любое возвращаемое значение и так оборачивается в промис.

См. также

  • Promise.reject — Создаёт промис, который сразу отклонён с заданной ошибкой.
  • Promise — Обещание результата, который будет готов позже: успех или ошибка.

В учебнике

  • Промисы — Промисы в JavaScript: состояния промиса, then, catch, finally, создание промиса через new Promise и цепочки.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.