在对象数组中,如何检查任何数组项是否具有真实属性
我有一个对象数组,我需要检查数组项中是否有一个值是真值的属性
const arr = [{name: 'Tony', test: false}, {name: 'Jack', test: false}, {name: 'Tina', test: false}]
const check = arr.filter(item =>item.test });
上面的代码正在完成这项工作。根据匹配的条件,check是匹配项的数组还是空数组。我想知道是否可以更好地做到这一点。如果arr内的任何项目的测试属性为true,我只需要检查其为true;如果test属性的任何一项都不为true,则我为false。
答案 0 :(得分:3)
您可以使用Array#some
并获得布尔值。
const
array = [{ name: 'Tony', test: false }, { name: 'Jack', test: false }, { name: 'Tina', test: false }],
check = array.some(item => item.test);
console.log(check);