JavaScriptda Generatorlarda Tsikllar
Generatorlar ichida tsikllardan foydalanish
mumkin. Bunda biz tsikllarni
yield yordamida pauza qilishimiz
mumkin. Keling, buni misolda ko'ramiz.
Har bir iteratsiyada tsiklni pauza qilamiz:
function *func() {
for (let i = 1; i <= 3; i++) {
yield i;
}
}
Iteratorni olamiz:
let iter = func();
Iteratorimizning ishlashini tekshiramiz:
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}
Iterator yarating, uning har bir chaqiruvi
10 dan nolgacha bo'lgan sonlarni
qaytarsin.
Generator yarating, u parametr sifatida son qabul qilsin. Har bir iterator chaqiruvi nolga yetguncha sonni birga kamaytirsin.
Generator yarating, u parametr sifatida son qabul qilsin. Har bir iterator chaqiruvi sonni ikki baravar kamaytirsin va natijani qaytarsin. Son bittadan kichik bo'lguncha shunday qilsin.
Iterator yarating, uning har bir chaqiruvi ikkining keyingi darajasini qaytarsin.
Iterator yarating, uning har bir chaqiruvi keyingi Fibonachchi sonini qaytarsin.