0Pricing
JavaScript Academy · Leçon

Promise.all / any / race / allSettled — choisissez le bon outil

Entraînez-vous avec les combinateurs de promesses : all, any, race et allSettled. Découvrez le comportement en cas de réussite ou d’échec et quand utiliser chacun

Promise.all / any / race / allSettled — choisissez le bon outil est une leçon JavaScript Academy gratuite sur CoddyKit. Ceci est la leçon 3 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.

Vue d’ensemble des combinateurs

Objectif : apprendre le comportement de quatre fonctions auxiliaires.

  • all : attendre tout ; échouer rapidement
  • any : première réussite
  • race : premier état final (réussite ou erreur)
  • allSettled : résultats de toutes les opérations
Promise.all / any / race / allSettled — choisissez le bon outil — illustration 1

Bases de Promise.all

Promise.all se résout avec un tableau de résultats ; un seul rejet suffit à rejeter l’ensemble.

// Small helpers for examples
function delay(ms, value, shouldFail = false) {
  return new Promise(function (resolve, reject) {
    setTimeout(function () {
      if (shouldFail) reject(new Error(String(value)));
      else resolve(value);
    }, ms);
  });
}

// Promise.all waits for all; rejects fast on first error
Promise.all([
  delay(10, "A"),
  delay(5, "B")
]).then(function (vals) {
  console.log("all:", vals);
});
Promise.all / any / race / allSettled — choisissez le bon outil — illustration 2

Bases de Promise.any

Promise.any se résout avec la première réussite ; elle n’est rejetée que si all les entrées sont rejetées.

// Promise.any gives the first fulfilled value
Promise.any([
  delay(8, "ok-1"),
  delay(3, "ok-2"),
  delay(6, "ok-3")
]).then(function (v) {
  console.log("any:", v);
}).catch(function (e) {
  console.log("any failed:", e.message);
});
Promise.all / any / race / allSettled — choisissez le bon outil — illustration 3

Bases de Promise.race

Promise.race choisit l’opération qui atteint son état final en premier : il peut s’agir d’une résolution ou d’un rejet.

// Promise.race settles with the first to finish (success or error)
Promise.race([
  delay(5, "win"),
  delay(7, "boom", true)
]).then(function (v) {
  console.log("race resolved:", v);
}).catch(function (e) {
  console.log("race rejected:", e.message);
});
Promise.all / any / race / allSettled — choisissez le bon outil — illustration 4

Bases de Promise.allSettled

Promise.allSettled se résout toujours avec un tableau d’objets d’état pour chaque entrée.

// Promise.allSettled waits for all and reports each outcome
Promise.allSettled([
  delay(4, "A"),
  delay(6, "X", true)
]).then(function (results) {
  console.log("allSettled:", results.map(function (r) { return r.status; }));
});
Promise.all / any / race / allSettled — choisissez le bon outil — illustration 5

Laquelle utiliser ?

Choix :

  • all : vous avez besoin de tous les résultats ; échouez rapidement à la moindre erreur.
  • any : acceptez la première réussite (sources de repli).
  • race : choisissez la première opération terminée (modèles avec délai d’expiration).
  • allSettled : recueillez tous les résultats pour les examiner.
Promise.all / any / race / allSettled — choisissez le bon outil — illustration 6

Quiz sur le choix d’un combinateur

Vérification rapide : premier résultat fulfilled.

Promise.all / any / race / allSettled — choisissez le bon outil — illustration 7

Récapitulatif

Récapitulatif : utilisez all pour « tout est nécessaire », any pour « première réussite », race pour « premier état final » et allSettled pour examiner tous les résultats sans court-circuiter l’exécution.

Promise.all / any / race / allSettled — choisissez le bon outil — illustration 8

Questions Fréquemment Posées

La leçon « Promise.all / any / race / allSettled — choisissez le bon outil » est-elle gratuite ?

Oui — le texte complet de « Promise.all / any / race / allSettled — choisissez le bon outil » 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 « Promise.all / any / race / allSettled — choisissez le bon outil » ?

Entraînez-vous avec les combinateurs de promesses : all, any, race et allSettled. Découvrez le comportement en cas de réussite ou d’échec et quand utiliser chacun 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 3 sur 3.

Combien de temps prend la leçon « Promise.all / any / race / allSettled — choisissez le bon outil » ?

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