JavaScript ရှိ Generator များ

မိမိကိုယ်ပိုင် Iterator များဖန်တီးနိုင်သော အထူး Function များရှိသည်။ ထိုသို့သော Function များကို Generator များဟုခေါ်သည်။ �ိုသို့သော Function များ၏ အမည်များသည် ကြယ်သင်္ကေတဖြင့် စတင်ရမည်။

javascriptfunction *func() {
  
}

Generator များအတွင်း၌ yield ဟူသော သော့ချက်စကားလုံးကို အသုံးပြုသည်။ ၎င်းသည် နောက်ခေါ်ယူမှုတွင် Iterator က ပြန်ပေးရမည့်အရာကို ညွှန်ပြသည်။ ဥပမာအနေဖြင့် ပထမအကြိမ်ခေါ်ယူမှုတွင် 1၊ ဒုတိယအကြိမ်တွင် 2၊ တတိယအကြိမ်တွင် 3 ပြန်ပေးရန် လုပ်ကြည့်ကြစို့။

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

Generator သည် ၎င်း၏ရလဒ်အဖြစ် Iterator တစ်ခုကို ပြန်ပေးသည်။

javascriptlet iter = func();

ကျွန်ုပ်တို့၏ Iterator ၏လုပ်ဆောင်ချက်ကို စစ်ဆေးကြည့်ကြစို့။

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 အထိ ဂဏန်းများကို ပြန်ပေးမည့် Iterator တစ်ခုကို ဖန်တီးပါ။