Middle
Hoe werken generators in JavaScript in vergelijking met gewone functies?
sobes.tech AI
Antwoord van AI
Generators in JavaScript zijn functies die hun uitvoering kunnen pauzeren en tussentijdse waarden kunnen teruggeven met behulp van het sleutelwoord yield. In tegenstelling tot gewone functies, die volledig worden uitgevoerd en een enkele waarde retourneren, maken generators het mogelijk om iterators te creëren met luie generatie van waarden.
Voorbeeld van een generator:
function* countUpTo(max) {
let count = 1;
while (count <= max) {
yield count; // pauzeert de uitvoering en geeft de waarde terug
count++;
}
}
const counter = countUpTo(3);
console.log(counter.next().value); // 1
console.log(counter.next().value); // 2
console.log(counter.next().value); // 3
console.log(counter.next().done); // true
Dus, generators zijn handig voor het werken met sequenties van gegevens die niet meteen volledig hoeven te worden berekend.