जावास्क्रिप्ट में तीन अंतर्निहित इटरेटर
वास्तव में, प्रत्येक इटरेबल ऑब्जेक्ट
में एक नहीं, बल्कि तीन इटरेटर होते हैं:
values, keys और entries.
वस्तुओं के प्रत्येक प्रकार के लिए, डिफ़ॉल्ट रूप से
इसका अपना इटरेटर लागू होता है। ऐरे के लिए - यह values है,
और, उदाहरण के लिए, Map कलेक्शन के लिए,
यह entries है।
इस ज्ञान से लैस होकर, अब हम इस सिद्धांत को
किसी भी कलेक्शन पर लागू कर सकते हैं।
उदाहरण के लिए, मान लीजिए कि हमारे पास एक Map कलेक्शन है:
let map = new Map();
map.set('a', 1);
map.set('b', 2);
map.set('c', 3);
डिफ़ॉल्ट रूप से, इस कलेक्शन के लिए
entries इटरेटर लागू होता है:
for (let elem of map) {
console.log(elem); // ['a', 1], ['b', 2], ['c', 3]
}
लेकिन हम आसानी से अपनी कलेक्शन की कुंजियाँ प्राप्त कर सकते हैं:
for (let elem of map.keys()) {
console.log(elem); // 'a', 'b', 'c'
}
हम मान भी प्राप्त कर सकते हैं:
for (let elem of map.values()) {
console.log(elem); // 1, 2, 3
}
Set कलेक्शन में डिफ़ॉल्ट रूप से कौन सा इटरेटर
काम करता है?