JavaScript'теги Генераторлор

Өз итераторлоруңузду түзүү үчүн колдонулуучу атайын функциялар бар. Мындай функциялар генераторлор деп аталат. Мындай функциялардын аталыштары жылдызча (*) менен башталышы керек:

javascriptfunction *func() {
  
}

Генераторлордун ичинде yield деген ачкыч сөз колдонулат, ал итератор кийинки чакырууда эмнени кайтарышы керек экенин көрсөтөт. Мисалы, биринчи чакыруу 1, экинчиси - 2, үчүнчүсү - 3 кайтарсын деп кылалы:

javascriptfunction *func() {
  yield 1;
  yield 2;
  yield 3;
}

Генератор өзүнүн натыйжасында итераторду кайтарат:

javascriptlet iter = func();

Келгиле, итераторубуздун иштерин текшерип көрөлү:

javascriptconsole.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}
Задание 1

Ар бир чакыруусу 5 ден 1 ге чейинки сандарды кайтарган итераторду түзүңүз.