我在代码部分发布了下面的地图。我向地图添加了一些值,如图所示。但是当我尝试使用时显示地图的内容 'getOwnPropertyNames'如代码所示,循环中的log语句不显示任何内容。
请让我知道如何正确使用'getOwnPropertyNames'
码:
const mymap = new Map();
const mapKeyToValue = (key, value) => {
mymap.set(key, value);
};
const getMyMap = () => mymap;
mapKeyToValue('1', [{ 'a': 10, 'b': 100, 'c': 1000 }]);
mapKeyToValue('2', [{ 'a': 20, 'b': 200, 'c': 2000 }]);
mapKeyToValue('3', [{ 'a': 30, 'b': 300, 'c': 3000 }]);
mapKeyToValue('4', [{ 'a': 40, 'b': 400, 'c': 4000 }]);
console.log(Object.getOwnPropertyNames(mymap));//displays []
Object.getOwnPropertyNames(mymap).forEach( (v) => {
console.log(mymap[v]);//displays nothing
});
答案 0 :(得分:3)
地图没有属性(仅限于字符串和符号键)。它将元素存储在内部。要遍历Map
,请使用let parseUsingSpecificProvider json (provider : JsonProvider<GENERIC>) =
provider.Parse json
,entries
,values
或带有keys
循环的隐式迭代器方法:
for … of