在这里,我们将为类中的每个函数实现一个,并接受一个可以在每个键值对上调用的回调。让我们看看如何实现这样的功能-
forEach(callback) {
for (let prop in this.container) {
//调用回调为: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也有一个适用于每个方法的原型方法,您可以使用类似于我们在此使用的方法。例如,
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