假设我有一本像这样的字典
objDict = {
id1 : { name: 'someObj1', id: 'someId1' },
id2 : { name: 'someObj2', id: 'someId2' },
id3 : { name: 'someObj3', id: 'someId3' },
}
如果我想在该字典的值中搜索“id”属性的属性“someId2”..我如何才能在找到它后获取整个对象?
除了使用 for-in 循环迭代字典之外,我真的想不出一个好的方法。我在考虑使用 Object.values() 但即便如此,我也想不出一种方法来使用它来获取包含 someId2 的整个对象。我只能确定该属性是否存在。
我只是想知道是否有比 for-in 循环更好的方法。谢谢
最佳答案
您可以使用 Object.keys() 获取所有键,然后遍历这些键并根据所需的 ID 选择您想要的对象。
var objDict = {
id1 : { name: 'someObj1', id: 'someId1' },
id2 : { name: 'someObj2', id: 'someId2' },
id3 : { name: 'someObj3', id: 'someId3' },
};
var obj;
Object.keys(objDict).forEach(x => obj = objDict[x].id === 'someId2' ? objDict[x]: obj);
console.log(obj);
关于javascript - 在具有特定属性的字典中查找值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46374993/