Junior — Middle
Kako se vrši istovremeno izvršavanje više obećanja pomoću Promise.all i kako se obrađuju njihovi rezultati?
sobes.tech АИ
Одговор од АИ
Promise.all omogućava pokretanje više obećanja paralelno i čekanje da se svi završe. Prima niz obećanja i vraća novo obećanje koje:
- Se rešava uspešno ako su sva obećanja u nizu uspešno završena. U tom slučaju, rezultat će biti niz vrednosti koje odgovaraju svakom obećanju u istom redosledu.
- Se odbacuje ako je bar jedno obećanje odbijeno, i vraća grešku prvog odbijenog obećanja.
Primer upotrebe:
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('Jedno obećanje je odbijeno:', error);
});
Na ovaj način, Promise.all je koristan za istovremeno izvršavanje više asinhronih operacija i obradu njihovih rezultata nakon što se sve završe.