DébutantNon commencé

Exercice 9.1 · 8 min · 0 tentative

Comprendre les Promises

🎯 Objectif

Comprendre les Promises (promesses), la base du code asynchrone en JavaScript.

📖 Contexte

C'est quoi une Promise ?

Une Promise est un objet qui représente le résultat d'une opération qui n'est pas encore terminée.

Imagine que tu commandes un café :

  • Pending (en attente) : le barista prépare ton café
  • Fulfilled (tenue) : "Voici ton café !" → succès
  • Rejected (rompue) : "Plus de café..." → échec

Créer une Promise

const maPromesse = new Promise(function(resolve, reject) {
  // resolve = succès, reject = échec
  resolve("Tout s'est bien passé !")
})

Récupérer le résultat

// En cas de succès → .then()
maPromesse.then(function(valeur) {
  console.log(valeur)  // "Tout s'est bien passé !"
})

// En cas d'échec → .catch()
maPromesse.catch(function(erreur) {
  console.log(erreur.message)
})

Les 3 états d'une Promise

ÉtatSignificationMéthode
PendingEn cours...(aucune)
FulfilledSuccès ✅.then()
RejectedÉchec ❌.catch()

Une Promise ne peut changer d'état qu'une seule fois : de pending vers fulfilled OU rejected. Jamais les deux.

📝 Consigne

  1. Observe la Promise cafeOK qui réussit avec resolve
  2. Complète la Promise cafeKO en appelant reject(new Error("Plus de café..."))
  3. Ajoute .catch() sur cafeKO pour afficher le message d'erreur
  4. Observe la fonction attendre() qui crée une Promise avec un délai

Résultat attendu :

Succès: Voici ton café !
Erreur: Plus de café...
Prêt après 100ms !

Objectifs

  • Appeler reject avec une erreur
  • Utiliser .catch()
  • Afficher le message de succès
  • Afficher l'erreur

Lis bien les instructions et lance-toi !

Indices (0/3)

Indice 1 verrouillé
Indice 2 verrouillé
Indice 3 verrouillé