Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

AsyncIterator : méthode [Symbol.asyncIterator]()

Baseline Widely available

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis ⁨janvier 2020⁩.

La méthode [Symbol.asyncIterator]() des instances de AsyncIterator implémente le protocole d'itérable asynchrone et permet aux itérateurs asynchrones natifs d'être consommés par la plupart des syntaxes qui attendent des itérables asynchrones, telles que les boucles for await...of. Elle retourne la valeur de this, c'est‑à‑dire l'objet itérateur asynchrone lui‑même.

Syntaxe

js
asyncIterator[Symbol.asyncIterator]()

Paramètres

Aucun.

Valeur de retour

La valeur de this, c'est‑à‑dire l'objet itérateur asynchrone lui‑même.

Exemples

Itération avec la boucle for await...of

Notez que vous avez rarement besoin d'appeler directement cette méthode. L'existence de la méthode [Symbol.asyncIterator]() rend tous les itérateurs asynchrones natifs itérables asynchrones, et les syntaxes d'itération comme la boucle for await...of appellent automatiquement cette méthode pour obtenir l'itérateur asynchrone à parcourir.

js
const asyncIterator = (async function* () {
  yield 1;
  yield 2;
  yield 3;
})();
(async () => {
  for await (const value of asyncIterator) {
    console.log(value);
  }
})();
// Affiche : 1, 2, 3

Spécifications

Specification
ECMAScript® 2026 Language Specification
# sec-asynciteratorprototype-asynciterator

Compatibilité des navigateurs

Voir aussi