Junior — Middle
Come si esegue contemporaneamente più promesse usando Promise.all e come vengono gestiti i loro risultati?
sobes.tech AI
Risposta dell'AI
Promise.all consente di eseguire più promesse in parallelo e di attendere che tutte si completino. Accetta un array di promesse e restituisce una nuova promessa che:
- Si risolve con successo se tutte le promesse dell'array si risolvono con successo. In questo caso, il risultato sarà un array di valori corrispondenti a ogni promessa nello stesso ordine.
- Viene rifiutata se almeno una delle promesse viene rifiutata, restituendo l'errore della prima promessa rifiutata.
Esempio di utilizzo:
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 delle promesse è stata rifiutata:', error);
});
In questo modo, Promise.all è utile per eseguire più operazioni asincrone contemporaneamente e gestire i loro risultati dopo che tutte sono state completate.