कभी-कभी डिक्शनरी के साथ काम करते समय, हमें किसी कार्य के लिए डिक्शनरी की केवल कीज़ एक ऐरे के रूप में चाहिए होती हैं। हम Object.keys का उपयोग करके किसी ऑब्जेक्ट के गुणों को आसानी से प्राप्त कर सकते हैं। हम इस मेथड का उपयोग अपने कंटेनर ऑब्जेक्ट से कीज़ वापस करने के लिए करेंगे।
उदाहरण
keys() {
return Object.keys(this.container);
}
आप इसका परीक्षण इस तरह कर सकते हैं:
उदाहरण
const myMap = new MyMap();
myMap.put("key1", "value1");
myMap.put("key2", "value2");
console.log(myMap.keys());
आउटपुट
इससे निम्न आउटपुट मिलेगा:
[ 'key1', 'key2' ]
ES6 Map में, वही मेथड उपलब्ध है जिसका आप उपयोग कर सकते हैं। ध्यान दें कि यह एक MapIterator ऑब्जेक्ट लौटाता है, जिसे आप ऐरे में बदल सकते हैं या सामान्य इटरेटर की तरह उपयोग कर सकते हैं। उदाहरण के लिए,
उदाहरण
const myMap = new Map([
["key1", "value1"],
["key2", "value2"]
]);
console.log(myMap.keys())
आउटपुट
इससे निम्न आउटपुट मिलेगा:
MapIterator { 'key1', 'key2' }
इसी तरह, ऐसे मामले होते हैं जब डिक्शनरी की केवल वैल्यूज़ की आवश्यकता होती है। ऐसे मामलों के लिए, हमें डिक्शनरी के माध्यम से लूप करना होगा और वैल्यूज़ एकत्र करनी होंगी। उदाहरण के लिए,
उदाहरण
values() {
let values = [];
for (let key in this.container) {
values.push(this.container[key]);
}
return values;
}
आप इन मेथड्स का परीक्षण इस तरह कर सकते हैं:
उदाहरण
const myMap = new MyMap();
myMap.put("key1", "value1");
myMap.put("key2", "value2");
console.log(myMap.values());
आउटपुट
इससे निम्न आउटपुट मिलेगा:
[ 'value1', 'value2' ]
फिर से ES6 Map में, यह कीज़ मेथड की तरह ही उपलब्ध है और उसी तरह उपयोग किया जा सकता है।