บางครั้งเมื่อทำงานกับพจนานุกรม เราต้องการเพียงคีย์ของพจนานุกรมเป็นอาร์เรย์สำหรับงานบางอย่าง เราสามารถรับคุณสมบัติของวัตถุได้อย่างง่ายดายโดยใช้ Object.keys เราจะใช้วิธีนี้เพื่อส่งคืนคีย์จากวัตถุคอนเทนเนอร์ของเรา
ตัวอย่าง
keys() { return Object.keys(this.container);}
คุณสามารถทดสอบสิ่งนี้ได้โดยใช้ -
ตัวอย่าง
const myMap =ใหม่ MyMap();myMap.put("key1", "value1");myMap.put("key2", "value2");console.log(myMap.keys());
ผลลัพธ์
สิ่งนี้จะให้ผลลัพธ์ -
[ 'key1', 'key2' ]
ใน ES6 Map มีวิธีการเดียวกันกับที่คุณสามารถใช้ได้ โปรดทราบว่าจะส่งกลับวัตถุ MapIterator ซึ่งคุณสามารถแปลงเป็นอาร์เรย์หรือใช้เหมือนตัววนซ้ำปกติ ตัวอย่างเช่น
ตัวอย่าง
const myMap =แผนที่ใหม่ ([ [ ["key1", "value1"], ["key2", "value2"]]);console.log(myMap.keys())
ผลลัพธ์
สิ่งนี้จะให้ผลลัพธ์ -
MapIterator { 'key1', 'key2' }
ในทำนองเดียวกัน มีหลายกรณีที่ต้องใช้เฉพาะค่าของพจนานุกรมเท่านั้น สำหรับกรณีดังกล่าว เราจำเป็นต้องวนรอบพจนานุกรมและรวบรวมค่า ตัวอย่างเช่น
ตัวอย่าง
values() { ให้ค่า =[]; สำหรับ (ให้ป้อน this.container) { values.push (this.container[key]); } คืนค่า;}
คุณสามารถทดสอบวิธีการเหล่านี้โดยใช้ -
ตัวอย่าง
const myMap =ใหม่ MyMap();myMap.put("key1", "value1");myMap.put("key2", "value2");console.log(myMap.values());ก่อน>ผลลัพธ์
สิ่งนี้จะให้ผลลัพธ์ -
[ 'value1', 'value2' ]อีกครั้งใน ES6 Map มีให้เหมือนกับวิธีคีย์และใช้งานได้เหมือนกัน