Aller au contenu principal

Le site sera en maintenance le 01/03/2026

Aller au contenu principal

Les callbacks, ça devient vite l'enfer ("Callback Hell") quand on les imbrique. JS a inventé les Promises. C'est un objet qui représente une valeur qui n'est pas encore là, mais qui arrivera (peut-être) dans le futur.

Une promesse a 3 états :

  • Pending (En cours)
  • Resolved (Succès) -> Appelle .then()
  • Rejected (Erreur) -> Appelle .catch()
const maPromesse = new Promise((resolve, reject) => {
    // Faisons un truc long...
    setTimeout(() => {
        const success = true;
        if (success) resolve("Ça a marché !");
        else reject("Oups...");
    }, 1000);
});

// Consommer la promesse
maPromesse
    .then(resultat => {
        console.log(resultat); // "Ça a marché !"
        return "Autre chose"; // On peut enchaîner
    })
    .then(suite => console.log(suite))
    .catch(erreur => console.error(erreur));