Programmation JavaScript/Générateurs
Apparence
Apparus en JS avec ES6 en 2013, les générateurs permettent de retourner un grand volume de données sans surcharger la rame, en la découpant en petits paquets.
En deux mots, on les utilise en remplaçant return
par yield
. Mais il faut aussi créer une fonction générateur, annotée avec un astérisque[1], pour suivre le patron de conception "Itérateur".
Exemple
[modifier | modifier le wikicode]function* fourInts() {
let int = 0;
while (int < 4) {
yield int;
int++;
}
}
const gen = fourInts(); // création
alert(gen.next().value); // 0
alert(gen.next().value); // 1
alert(gen.next().value); // 2
alert(gen.next().value); // 3
alert(gen.next().value); // undefined