Sofiane Boumedine Lexique Dev

Iterator Protocol

JavaScript 🟡 Mid

Type : Concept

Definition

Le protocole iterator definit une maniere standard de produire une sequence de valeurs. Un objet est iterable s'il implemente Symbol.iterator, qui retourne un objet avec une methode next().

Analogie

Un distributeur de tickets : chaque fois que tu appuies sur le bouton (next), tu obtiens le ticket suivant, jusqu'a ce qu'il n'y en ait plus (done: true).

Exemple de code

const range = {
  *[Symbol.iterator]() {
    for (let i = 1; i <= 3; i++) yield i;
  }
};
console.log([...range]); class="cmt">// [1, 2, 3]

Cas d'usage

Rendre un objet personnalise compatible avec for...of, le spread et le destructuring.

coreinterview-question