Как написать функцию Promise.race наоборот?

Как написать функцию Promise.race наоборот?. Он должен вернуть последнее из обещаний. Без использования Promise.race(), Promise.all(), Promise.allSettled().
  • Вопрос задан
  • 306 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
const last = promises => new Promise((resolve, reject) => {
  let pending = promises.length;

  if (!pending) {
    resolve();
  } else {
    promises.forEach(n => n
      .then(result => --pending || resolve(result))
      .catch(error => --pending || reject(error))
    );
  }
});
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы