Junior — Middle
Cum se realizează executarea simultană a mai multor promisiuni folosind Promise.all și cum sunt gestionate rezultatele lor?
sobes.tech AI
Răspuns de la AI
Promise.all permite executarea mai multor promisiuni în paralel și așteaptă ca toate să se finalizeze. Primește un array de promisiuni și returnează o nouă promisiune care:
- Se rezolvă cu succes dacă toate promisiunile din array se finalizează cu succes. În acest caz, rezultatul va fi un array de valori corespunzătoare fiecărei promisiuni în aceeași ordine.
- Este respinsă dacă cel puțin una dintre promisiuni este respinsă, și returnează eroarea primei promisiuni respinse.
Exemplu de utilizare:
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('Una dintre promisiuni a fost respinsă:', error);
});
Astfel, Promise.all este util pentru executarea simultană a mai multor operații asincrone și gestionarea rezultatelor lor după finalizarea tuturor.