我有一个这样的数组:
myArray = {firstValue: false, secondValue: false, thirdValue: true, forthValue: false};
我想检查是否每个值都是假的,如果是,做点什么。
例子 :
myArray.every(x => x==false)
//do something
这是正确的方法吗?还是需要传递一个函数?
最佳答案
第一个 。它不是一个数组,它是一个对象。
如果要检查所有值是否都是 false
,可以通过 Object#keys 获取键,然后在该数组上使用 Array#every 。
const obj = {firstValue: false, secondValue: false, thirdValue: true, forthValue: false};
const allFalse = Object.keys(obj).every(key => obj[key] === false);
console.log(allFalse);
如果你使用 ES8,你也可以使用 Object#values
const obj = {firstValue: false, secondValue: false, thirdValue: true, forthValue: false};
const allFalse = Object.values(obj).every(value => value === false);
console.log(allFalse);
关于javascript - Array.every() 检查值是否为假,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48014569/