如何检查数组中是否至少有一个元素?(我想验证数组是否为空)
很抱歉问这个愚蠢的问题,我已经在谷歌上花了太多时间…(谷歌只返回复杂的情况和解决方案。我的问题似乎太简单了。
编辑:好的,但是像[,,[],,[]…]这样的数组会发生什么?对于我的目的,它应该被认为是空的。
编辑2:抱歉,伙计们,对于混乱!一开始,我甚至不知道我到底在找什么。谢谢大家!
这将满足您的新需求:
function isEmpty(arr) {
if (!Array.isArray(arr)) {
return false;
}
return arr.every(isEmpty);
}
它的作用:在Array.prototype.every
的帮助下,检查剩下的每一项是否为空数组。.every()
自动跳过阵列孔。
引用:
-
Array.isArray()
-
Array.prototype.every()
你也可以在这里使用truthiness。这将帮助您同时检查未定义。[]是假的,所以你可以这样做:
var arr = [];
if(!arr) {
... arr is undefined or empty array
} else {
... arr has at least one value
}