我有一个对象列表:
var myObj = {
obj1: {name: "bob", employed: true},
obj2: {name: "dave", employed: false},
obj3: {name: "james", employed: true},
}
迭代对象列表并计算有多少对象相等使用:true
的最有效/优雅的方法是什么。有没有一个简短的方法可以写这个?我正在考虑像下面这样实现它:
const countEmployed = () => {
for (let key in myObj) {
if (myObj .hasOwnProperty(key)) {
}
}
}
最佳答案
您可以在 Object.values()
上使用 .reduce()
,方法是使用 used
的 bool 值作为要添加的数字总计如下:
const myObj = {
obj1: {name: "bob", employed: true},
obj2: {name: "dave", employed: false},
obj3: {name: "james", employed: true},
};
const sum = Object.values(myObj).reduce((t, {employed}) => t+employed, 0);
console.log(sum);
关于javascript - 遍历对象列表并检查属性值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59335692/