javascript - 在对象属性中计算真正的布尔值
问题描述
嗨,我需要一个函数来计算不同对象“usuarios”的“online:true”属性,有人可以帮忙吗?
// toni: {
// edad: 33,
// online: true
// },
// emi: {
// edad: 25,
// online: true
// },
// fran: {
// edad: 25,
// online: false
// },
// agus: {
// edad: 24,
// online: false
// }```
解决方案
使用Object.values收集所有值并使用reduce count allonline:true
const obj = {
toni: {
edad: 33,
online: true,
},
emi: {
edad: 25,
online: true,
},
fran: {
edad: 25,
online: false,
},
agus: {
edad: 24,
online: false,
},
};
const result = Object.values(obj).reduce((acc, curr) => {
if (curr.online) ++acc;
// or
// if (curr.online === true) ++acc;
return acc;
}, 0);
console.log(result);