我目前正在寻找一种解决方案,该方法如何检查仅包含空字符串的字符串数组。有没有一种有效的方法来实现这种行为?
['', '', '', ''] // This should be true
['', null, null, ''] // This should be true
['a', '', '', ''] // This should be false
答案 0 :(得分:4)
您需要一个回路,最好是短路回路。
const check = array => !array.some(Boolean);
console.log(check(['', '', '', ''])); // true
console.log(check(['', null, null, ''])); // true
console.log(check(['a', '', '', ''])); // false
答案 1 :(得分:3)
您可以使用some功能:
let arr = ['', '', '', ''];
arr.some(Boolean);
它将检查某些元素是否为假值(”,0,null,未定义,假),如果所有元素均为假;它将返回true。
答案 2 :(得分:0)
感谢大家,包括帕特里克·埃文斯。
我使用join('')
方法。对我来说这看起来很干净。
let arr = ['', '', '', ''] // This should be true
console.log(Boolean(arr.join(''));