Penjana dalam JavaScript

Terdapat fungsi khas, dengan bantuan yang mana anda boleh mencipta pengitar anda sendiri. Fungsi tersebut dipanggil penjana. Nama fungsi tersebut mesti bermula dengan asterisk:

javascriptfunction *func() {
  
}

Di dalam penjana, kata kunci yield digunakan, menunjukkan apa yang pengitar harus kembalikan pada panggilan seterusnya. Sebagai contoh mari kita buat supaya panggilan pertama mengembalikan 1, kedua - 2, dan ketiga - 3:

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

Penjana dengan hasilnya mengembalikan pengitar:

javascriptlet iter = func();

Mari kita semak kerja pengitar kami:

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

Cipta pengitar, setiap panggilannya akan mengembalikan nombor dari 5 hingga 1.