如何检查数组中是否至少有一个元素? (我想验证数组是否为空。)
对于这个愚蠢的问题,我已经在Google上花了太多时间......(Google只返回复杂的情况和解决方案。看起来我的问题太简单了。)。
编辑:好的,但是像[,, [] ,, [] ,,,这样的数组会发生什么?就我的目的而言,它应该被认为是空的。编辑2:对不起,伙计们,因为混乱!起初,我甚至不知道我在找什么。谢谢大家!
答案 0 :(得分:1)
这将满足您的新要求:
function isEmpty(arr) {
if (!Array.isArray(arr)) {
return false;
}
return arr.every(isEmpty);
}
它的作用:在Array.prototype.every
的帮助下,它检查剩下的每个项目是否为空数组。并且.every()
会自动跳过数组孔。
参考文献:
答案 1 :(得分:-1)
你也可以在这里使用真实性。这有助于您同时检查未定义。 []是假的,所以你可以这样做:
var arr = [];
if(!arr) {
... arr is undefined or empty array
} else {
... arr has at least one value
}