我有一个这样的数组:

   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/

10-12 00:08
查看更多