我有一个对象
var arr = {
alfa: {
name: "a",
id: "1"
},
beta: {
name: "b",
id: "2"
}}
我想记录第二个道具"测试版"的标题
我找不到具有"find"的道具值
Object.values(arr).find(obj => {
return obj.id === '2'
})
但是我如何提取道具名称
在日志中,我想这样打印:
console.log('second prop name is ', extractPropNameById(2))
结果必须是这样的:
"第二道具名称是"贝塔";
Object.keys(arr)
只返回道具数组["alfa", "beta"]
按id查找返回undefinded
正如@GuyIncognito在提到的评论中所说,你可以获得密钥,然后根据你想要的密钥的id属性进行过滤。
var arr = {
alfa: {
name: "a",
id: "1"
},
beta: {
name: "b",
id: "2"
}
}
console.log("second prop name is " + extractPropNameById("2", arr));
function extractPropNameById(searchID, arra) {
let keys = Object.keys(arra);
let result = keys.find(key => arra[key].id === searchID);
return result;
}