जावास्क्रिप्ट में जनरेटर
विशेष फ़ंक्शन होते हैं, जिनकी मदद से आप अपने खुद के इटरेटर बना सकते हैं। ऐसे फ़ंक्शनों को जनरेटर कहा जाता है। ऐसे फ़ंक्शनों के नाम स्टार से शुरू होने चाहिए:
function *func() {
}
जनरेटर के अंदर कीवर्ड yield का उपयोग किया जाता है,
जो इंगित करता है कि इटरेटर को अगली
कॉल पर क्या वापस करना चाहिए। उदाहरण के लिए
आइए ऐसा करें कि पहली कॉल 1 लौटाए,
दूसरी - 2, और तीसरी - 3:
function *func() {
yield 1;
yield 2;
yield 3;
}
जनरेटर अपने परिणाम के रूप में एक इटरेटर लौटाता है:
let iter = func();
आइए हमारे इटरेटर के काम की जाँच करें:
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}
एक इटरेटर बनाएं, जिसकी प्रत्येक कॉल
5 से 1 तक की संख्याएँ
लौटाएगी।