Sobes.tech
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.