Cikli generatoros JavaScript
Generatoros var izmantot
ciklus. Šajā gadījumā mēs varam apturēt ciklus
izmantojot yield. Apskatīsim
piemērā. Apturēsim
ciklu katrā iterācijā:
function *func() {
for (let i = 1; i <= 3; i++) {
yield i;
}
}
Iegūstam iteratoru:
let iter = func();
Pārbaudīsim mūsu iteratora darbību:
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}
Izveidojiet iteratoru, kurā katrs izsaukums
atgriezīs skaitļus no 10
līdz nullei.
Izveidojiet generatoru, kurš parametru paņems skaitli. Lai katrs iteratora izsaukums samazina skaitli par vienu, līdz tiks sasniegta nulle.
Izveidojiet generatoru, kurš parametru paņems skaitli. Lai katrs iteratora izsaukums samazina skaitli uz pusi un atgriež rezultātu. Un tā, kamēr skaitlis nekļūst mazāks par vienu.
Izveidojiet iteratoru, kurā katrs izsaukums atgriezīs nākamo pakāpi diviem.
Izveidojiet iteratoru, kurā katrs izsaukums atgriezīs nākamo Fibonači skaitli.