Sobes.tech
Junior — Middle

Jak se provádí současné plnění několika slibů pomocí Promise.all a jak jsou jejich výsledky zpracovávány?

sobes.tech AI

Odpověď od AI

Promise.all umožňuje spouštět více slibů současně a čekat, až všechny dokončí. Přijímá pole slibů a vrací nový slib, který:

  • Je úspěšně vyřešen, pokud všechny sliby v poli úspěšně dokončí. V takovém případě bude výsledkem pole hodnot odpovídajících každému slibu ve stejném pořadí.
  • Je zamítnut, pokud je alespoň jeden slib zamítnut, a vrací chybu prvního zamítnutého slibu.

Příklad použití:

const promise1 = Promise.resolve(1);
const promise2 = Promise.resolve(2);
const promise3 = Promise.resolve(3);

Promise.all([promise1, promise2, promise3])
  .then(results => {
    console.log(results); // [1, 2, 3]
  })
  .catch(error => {
    console.error('Jeden ze slibů byl zamítnut:', error);
  });

Tímto způsobem je Promise.all užitečný pro současné provádění několika asynchronních operací a zpracování jejich výsledků po dokončení všech.