javascript - 计算 JavaScript 对象中的 true 数
问题描述
假设我有以下对象:
items = {
1: true,
2: false,
3: true,
4: true
},
我将如何计算真实的数量?因此,在这种情况下,一个简单的函数将返回数字 3。
解决方案
您可以reduce
对象的values
, 强制true
s1
并将它们添加到累加器中:
const items = {
1: true,
2: false,
3: true,
4: true
};
console.log(
Object.values(items).reduce((a, item) => a + item, 0)
);
假设对象仅包含true
s 和false
s,否则您必须显式测试true
:
const items = {
1: true,
2: false,
3: 'foobar',
4: true
};
console.log(
Object.values(items).reduce((a, item) => a + (item === true ? 1 : 0), 0)
);
推荐阅读
- java - 从工作线程更新 GUI 元素 - tkinter - Python
- html - 如何修复这个可悬停的菜单?它不起作用
- python-3.x - Python 3 CBC 由于双反斜杠字节而失败
- reactjs - 使用 create-react-app 时如何设置样式化组件的命名空间?
- javascript - ListItem 在点击时打开和关闭?
- ios - 在扩展中触发 viewDidAppear 或如何在 viewController 中使用扩展中的变量?
- r - R httr 包 - 向带有正文的 API 发出 POST 请求
- c++ - C++ 在模板化指针类型之间轻松转换
- javascript - 如何正确命名和访问使用中继器加载的元素 ID?
- python - 无法在 Kaggle Notebook 环境中导入“cuxfilter”包