JavaScript-тегі генераторлардағы циклдар
Генераторлардың ішінде циклдарды
қолдануға болады. Бұл ретте біз циклдарды
yield көмегімен тоқтата аламыз. Мысалға
қарайық. Циклды әрбір итерацияда тоқтатайық:
function *func() {
for (let i = 1; i <= 3; i++) {
yield i;
}
}
Итераторды аламыз:
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}
Әр шақыруы 10-нан нөлге дейінгі
сандарды қайтаратын итератор жасаңыз.
Параметр ретінде сан қабылдайтын генератор жасаңыз. Итератордың әрбір шақыруы нөлге жеткенге дейін санды бірге азатсын.
Параметр ретінде сан қабылдайтын генератор жасаңыз. Итератордың әрбір шақыруы санды екі есе азайтып, нәтижені қайтарсын. Сан бірден кіші болғанша осылай жалғасасын.
Әрбір шақыруы екінің келесі дәрежесін қайтаратын итератор жасаңыз.
Әрбір шақыруы келесі Фибоначчи санын қайтаратын итератор жасаңыз.