我在这里获取地图对象的键
let woodNunChaku = {
dimensions:"23cm",
};
let foamNunChaku = {
dimensions:"21cm",
};
let m = new Map();
m.set("wood",woodNunChaku);
m.set("foam",foamNunChaku);
for (let [key,value] of m){
console.log(key);
}
输出:
wood
foam
如果我使用下面的代码,我将得到整个对象
for (let [key,value] of m){
console.log(value);
}
输出:
{dimensions: "23cm"}
{dimensions: "21cm"}
如果我使用此代码:
for (let [key,value] of m){
console.log(value['dimensions']);
}
它会输出尺寸键
"23cm"
"21cm"
但是,如果我想使用woodNunChaku
对象来获取Map()
对象的密钥,该怎么办?
例如:我想使用Map()
对象显示两个对象的“尺寸”。
答案 0 :(得分:1)
好像您正在使用对象作为每个键的值来创建js映射。因此,您在代码中创建的地图看起来像[["wood", {dimensions: "23cm"}], ["foam", {dimensions: "21cm"}]]
,并且每个对象都存储为地图元素的值。为了获取每个对象的键,您需要遍历映射值并获取每个对象的键。例如:
for (let value of m.values()){
let keys = Object.keys(value);
console.log(keys);
}
// OUTPUT
// ["dimensions"]
// ["dimensions"]