需求
判断双层数组中每一项是否都不为空,都不为空返回true,否则返回false
数组格式:
arr1 = [
{
list: [12, 25, 7, 18, 55]
},
{
list: [36, 9]
}
]
arr2 = [
{
list: [12, '', 7, '', 55]
},
{
list: [36, 9]
}
]
实现
export function checkEmpty(arr) {
let result = null
if (arr && arr.length) {
let newArr = []
for (let i = 0; i < arr.length; i++) {
let bool = arr[i].list.every(v => !!v)
newArr.push(bool)
}
// 注意:every方法若收到一个空数组,则在一切情况下都会返回 true。
result = newArr.length ? newArr.every(v => !!v) : false
}
return result
}
let flag1 = checkEmpty(arr1)
let flag2 = checkEmpty(arr2)
console.log('flag1:', flag1) // true
console.log('flag2:', flag2) // false