cqwcns 发表于 2022-12-13 16:13

JS,判断数组所有值均为有效值的问题

如以下代码,我希望判断一个数组是否所有值都有效?
有什么更简、更高效的方法?
请各位大佬指教,感谢。

const funIsAllTrue = (arr) => {
    let res = true;
    arr.forEach(element => {
      if (!element) res = false;
    });
    return res;
}

console.log(funIsAllTrue(['a', 'b', 'c']));
// true

console.log(funIsAllTrue(['', '', '']));
// false

console.log(funIsAllTrue(['a', '', 'c']));
// false

console.log(funIsAllTrue(['a', '', '']));
// false

d199212 发表于 2022-12-13 16:25

const funIsAllTrue = (arr) => {
    let resIndex = arr.findIndex(element => !element );
    return resIndex == -1;
}

速度富贵浮云 发表于 2022-12-13 16:26

本帖最后由 速度富贵浮云 于 2022-12-13 16:33 编辑

const funIsAllTrue = (arr) => {
    return !arr.some(element =>!element)
}
或者
const funIsAllTrue = (arr) => {
    return arr.every(item=>item)
}

天天爱分享 发表于 2022-12-13 16:49

console.time('test')
const funIsAllTrue = (arr) => {
    return arr.join('').length == arr.length
}
console.log(funIsAllTrue(['a','','c']));
console.timeEnd('test')https://s1.ax1x.com/2022/12/13/z5MBKs.png

爱飞的猫 发表于 2022-12-13 19:17

const arr =
arr.every(Boolean);

Yxlhsx 发表于 2022-12-14 09:36

找特定一个的用some,判断所有的用every
页: [1]
查看完整版本: JS,判断数组所有值均为有效值的问题