Код IT
← Каталог

Асинхронное программирование в JavaScript — Управляемый Promise: `Promise.withResolvers()`

Фрагмент из «Асинхронное программирование в JavaScript»: Управляемый Promise: `Promise.withResolvers()`.

JavaScript main.js
const jobs = [
  Promise.resolve(33),
  new Promise((resolve) => setTimeout(() => resolve(66), 0)),
  99,
  Promise.reject(new Error('an error'))
];

Promise.allSettled(jobs).then((results) => {
  console.log(results);
  // [
  //   { status: 'fulfilled', value: 33 },
  //   { status: 'fulfilled', value: 66 },
  //   { status: 'fulfilled', value: 99 },
  //   { status: 'rejected', reason: Error('an error') }
  // ]
});
const jobs = [
  Promise.resolve(33),
  new Promise((resolve) => setTimeout(() => resolve(66), 0)),
  99,
  Promise.reject(new Error('an error'))
];

Promise.allSettled(jobs).then((results) => {
  console.log(results);
  // [
  //   { status: 'fulfilled', value: 33 },
  //   { status: 'fulfilled', value: 66 },
  //   { status: 'fulfilled', value: 99 },
  //   { status: 'rejected', reason: Error('an error') }
  // ]
});