javascript / intermediate
Snippet
Eigene Iteratoren mit Generatoren
Generatoren sind Funktionen, die pausiert und fortgesetzt werden können. Sie geben ein Iterator-Objekt zurück und verwenden das Schlüsselwort 'yield', um eine Sequenz von Werten über die Zeit zu erzeugen, anstatt alle auf einmal.
snippet.js
1
2
3
4
5
6
7
8
function* idGenerator() {let id = 1;while (true) {yield `ID-${id++}`;}}const gen = idGenerator();console.log(gen.next().value); // ID-1
Erklärung
1
function* idGenerator() {
Das Sternchen (*) kennzeichnet eine Generator-Funktion.
2
yield `ID-${id++}`;
Pausiert die Ausführung und gibt den angegebenen Wert an den Aufrufer zurück.