Генератори у JavaScript
Постоје посебне функције, помоћу којих можете креирати своје итераторе. Такве функције се зову генератори. Њихова имена морају почињати са звездицом:
function *func() {
}
Унутар генератора се користи кључна
реч yield, која указује шта
треба итератор да врати при
следећем позиву. За пример
хајде да урадимо тако да први
позив враћа 1, други - 2,
а трећи - 3:
function *func() {
yield 1;
yield 2;
yield 3;
}
Генератор као резултат враћа итератор:
let iter = func();
Хајде да проверимо рад нашег итератора:
console.log(iter.next()); // {value: 1, done: false}
console.log(iter.next()); // {value: 2, done: false}
console.log(iter.next()); // {value: 3, done: false}
console.log(iter.next()); // {value: undefined, done: true}
Креирајте итератор чији ће сваки позив
враћати бројеве од 5
до 1.