如何解决无法定义对象属性,无法计数
我有一个具有3个属性的对象,每个对象的属性都有一个对象作为其值。我正在尝试console.log每个对象的联机属性,但得到undefined
。我也尝试计算设置为true的在线属性的数量,但不返回任何数字。为什么我未定义,以及如何将在线属性设置为true?
function countOnline(usersObj) {
let count = 0;
for (let user in usersObj) {
console.log(user);
console.log(user.online);
}
return count;
}
const users = {
Alan: {
online: false
},Jeff: {
online: true
},Sarah: {
online: false
}
}
countOnline(users);
解决方法
user
是键,而不是值。此外,每次在线属性为true时,您都需要增加count
。
for (let user in usersObj) {
console.log(usersObj[user]);
console.log(userObjs[user].online);
if(userObjs[user].online)
++count;
}
实时示例:
function countOnline(usersObj) {
let count = 0;
for (let user in usersObj) {
console.log(usersObj[user]);
console.log(usersObj[user].online);
if(usersObj[user].online) ++count;
}
return count;
}
const users = {
Alan: {
online: false
},Jeff: {
online: true
},Sarah: {
online: false
}
}
console.log(countOnline(users));
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。