下面的代码运行良好,但 ESLint 插件显示警告:“不允许使用‘ForinStatement’”,所以我想将其更改为其他方式以防止出现警告消息:
let count = 0;
for (const key in groups) {
if (Object.prototype.toString.call(groups[key]) === '[object Object]') {
if ({}.hasOwnProperty.call(groups[key], 'users')) {
count += groups[key].users.length;
}
}
}
最佳答案
如果您的目标只是避免 ESLint 中的错误,我建议使用 Object.keys(obj).forEach()
我通常在自己的项目中采用这种方法。
伪例子:
Object.keys(groups).forEach(key => {
if (Object.prototype.toString.call(groups[key]) === '[object Object]') {
if ({}.hasOwnProperty.call(groups[key], 'users')) {
count += groups[key].users.length;
}
}
});
关于javascript - 循环遍历 JavaScript 对象的其他方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40357205/