ที่นี่เราจะนำ forEach function ไปใช้ในคลาส และรับ callback ที่จะถูกเรียกกับทุกคู่คีย์-ค่า มาดูวิธีการนำไปใช้งาน:
ตัวอย่างโค้ด
forEach(callback) {
for (let prop in this.container) {
// เรียก callback เป็น: callback(key, value)
callback(prop, this.container[prop]);
}
}
ทดสอบการทำงานได้ดังนี้:
ตัวอย่างการใช้งาน
const myMap = new MyMap();
myMap.put("key1", "value1");
myMap.put("key2", "value2");
myMap.forEach((k, v) => console.log(`Key is ${k} and value is ${v}`));
ผลลัพธ์
จะได้ผลลัพธ์ดังนี้:
Key is key1 and value is value1 Key is key2 and value is value2
ES6 Maps ก็มี prototype method forEach ที่ใช้งานได้คล้ายกัน เช่น:
ตัวอย่าง
const myMap = new Map([
["key1", "value1"],
["key2", "value2"]
]);
myMap.forEach((k, v) => console.log(`Key is ${k} and value is ${v}`));
ผลลัพธ์
จะได้ผลลัพธ์ดังนี้:
Key is key1 and value is value1 Key is key2 and value is value2