Встречается на собеседованиях • сегодня

Где хранится результат первого Promise при множественных вызовах

Результат первого Promise кэшируется внутри самого объекта Promise после его разрешения (resolve/reject). При последующих вызовах .then() или .catch() на том же Promise, он будет возвращать тот же результат без повторного выполнения асинхронной операции. Это называется мемоизацией.

javascript
const promise = new Promise(res => setTimeout(() => res(42), 1000));

promise.then(console.log); // через 1 сек: 42
promise.then(console.log); // сразу: 42 (результат уже есть)

Особенности:

  1. Promise - одноразовый, после разрешения состояние неизменно
  2. Все последующие обработчики получат тот же результат
  3. Можно вызывать .then() сколько угодно раз
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы