javascript - 如何使用 .filter() 方法过滤对象中的布尔值
问题描述
所以我想使用 .filter() 方法过滤这些对象,但我不知道如何正确地做到这一点。请帮帮我
const male = [
{'mike':true},
{'james':true},
{'katy':false},
{'taylor':false}
].filter()
解决方案
因为不知道对象键,所以Object.values()
用来获取值数组,并使用第一个条目作为过滤器
const identifiesAsMale = [
{ 'mike': true },
{ 'james': true },
{ 'katy': false },
{ 'taylor': false }
].filter(o => Object.values(o)[0])
console.log(identifiesAsMale)
当然,这只有在每个对象都有一个具有布尔值的属性时才有效。
推荐阅读
- r - 为什么是整数类型?
- java - 将 log4j.properties 放入 Eclipse 中的 Maven 项目中,在“src”文件夹中有一些“默认包”?
- c++ - C++ 和 WMI:在 IWbemClassObject::Put 方法中传递对 CIM 类的引用
- javascript - 多个代理可以同时使用唯一的 Twilio 编号吗?
- python - 为什么 Flask 忽略 Cache-Control?
- javascript - 在 React 中导航到跨源 URL 时出现问题
- java - 如何在 HTML(Thymeleaf、Spring、Java)中调用方法?
- python - DataFrame 列上的停用词
- reactjs - 呈现为纯文本
- lisp - gensym 在 Lisp 中做了什么?