0Pricing
JavaScript Academy · Leçon

Promesses — états, chaînage et gestion des erreurs

Créez et utilisez des promesses : états (en attente, tenue, rejetée), chaînage avec then et gestion des erreurs avec catch/finally

Promesses — états, chaînage et gestion des erreurs est une leçon JavaScript Academy gratuite sur CoddyKit. Ceci est la leçon 2 sur 3. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage JavaScript Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours JavaScript Academy comprend 3 leçons au total.

Introduction aux Promises

Objectif : apprendre de petits modèles d’utilisation des Promises.

  • États : pending → fulfilled/rejected
  • Enchaînement avec then
  • Interception des erreurs avec catch
  • Nettoyage avec finally
Promesses — états, chaînage et gestion des erreurs — illustration 1

Résoudre une Promise

Une Promise commence à l’état pending et devient fulfilled lorsque vous appelez resolve.

// Create a Promise and resolve it
function waitMs(ms) {
  return new Promise(function (resolve) {
    setTimeout(function () {
      resolve("done");
    }, ms);
  });
}

console.log("Start");
waitMs(10).then(function (msg) {
  console.log("Resolved:", msg);
});
Promesses — états, chaînage et gestion des erreurs — illustration 2

Rejeter et intercepter

Utilisez reject(Error) en cas d’échec. Un catch intercepte tout rejet situé au-dessus de lui.

// Reject to signal an error; handle with catch
function maybeFail(ok) {
  return new Promise(function (resolve, reject) {
    if (ok) {
      resolve("ok");
    } else {
      reject(new Error("bad"));
    }
  });
}

maybeFail(true)
  .then(function (v) {
    console.log("A:", v);
    return maybeFail(false);
  })
  .catch(function (e) {
    console.log("Caught:", e.message);
  });
Promesses — états, chaînage et gestion des erreurs — illustration 3

Bases de l’enchaînement avec then

Chaque then peut renvoyer une valeur (ou une Promise). L’étape suivante la reçoit.

// Chain then steps; return values flow to the next then
Promise.resolve(2)
  .then(function (n) {
    return n * 3;
  })
  .then(function (n) {
    console.log("Result:", n);
  });
Promesses — états, chaînage et gestion des erreurs — illustration 4

Nettoyage avec finally

finally sert au nettoyage après une réussite ou une erreur ; il ne reçoit ni la valeur ni l’erreur.

// finally runs whether fulfilled or rejected
function task(ok) {
  return new Promise(function (resolve, reject) {
    ok ? resolve("yay") : reject(new Error("oops"));
  });
}

task(false)
  .catch(function (e) {
    console.log("Handled:", e.message);
  })
  .finally(function () {
    console.log("Cleanup done");
  });
Promesses — états, chaînage et gestion des erreurs — illustration 5

Aperçu de Promise.all

Promise.all se résout avec un tableau de résultats ou est rejetée si une seule opération échoue.

// Promise.all waits for all; rejects fast if any fail
const a = waitMs(5);
const b = Promise.resolve("B");

Promise.all([a, b])
  .then(function (values) {
    console.log("All:", values);
  })
  .catch(function (e) {
    console.log("All failed:", e.message);
  });
Promesses — états, chaînage et gestion des erreurs — illustration 6

Quiz sur la gestion des erreurs des Promises

Vérification rapide : où gérer les erreurs ?

Promesses — états, chaînage et gestion des erreurs — illustration 7

Récapitulatif

Récapitulatif : utilisez resolve en cas de réussite, reject en cas d’erreur, enchaînez les étapes avec then, gérez les problèmes avec catch et utilisez finally pour le nettoyage.

Promesses — états, chaînage et gestion des erreurs — illustration 8

Questions Fréquemment Posées

La leçon « Promesses — états, chaînage et gestion des erreurs » est-elle gratuite ?

Oui — le texte complet de « Promesses — états, chaînage et gestion des erreurs » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours JavaScript Academy, passe à CoddyKit PRO. Le cours JavaScript Academy comprend 3 leçons au total.

Qu'est-ce que j'apprendrai dans « Promesses — états, chaînage et gestion des erreurs » ?

Créez et utilisez des promesses : états (en attente, tenue, rejetée), chaînage avec then et gestion des erreurs avec catch/finally Tu pratiques JavaScript Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer JavaScript Academy ?

Aucune expérience préalable n'est requise. JavaScript Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 3.

Combien de temps prend la leçon « Promesses — états, chaînage et gestion des erreurs » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon JavaScript Academy ?

Oui. Chaque leçon JavaScript Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Boucle d’événements et notions de base des tâches et microtâches
  2. Promesses — états, chaînage et gestion des erreurs
  3. Promise.all / any / race / allSettled — choisissez le bon outil
← Retour à JavaScript Academy