Sobes.tech
Middle

Какви други методи на Promise API знаеш освен Promise.all?

sobes.tech AI

Отговор от AI

Освен Promise.all, в API-то на Promise има няколко полезни метода:

  • Promise.race(iterable) — връща обещание, което ще бъде изпълнено или отхвърлено, веднага щом първото от дадените обещания бъде изпълнено или отхвърлено.

  • Promise.allSettled(iterable) — връща обещание, което ще бъде изпълнено, когато всички дадени обещания приключат (независимо от резултата), и ще върне масив от обекти с състоянието на всяко обещание.

  • Promise.any(iterable) — връща обещание, което ще бъде изпълнено с резултата от първото успешно изпълнено обещание; ако всички обещания бъдат отхвърлени, то ще бъде отхвърлено с AggregateError.

Пример за използване на Promise.race:

const p1 = new Promise(resolve => setTimeout(() => resolve('Първи'), 500));
const p2 = new Promise(resolve => setTimeout(() => resolve('Втори'), 100));

Promise.race([p1, p2]).then(result => console.log(result)); // Ще изведе 'Втори'