检查数组是否已定义并且具有长度
check if array is both defined and has length
我有一个类似这样的javascript查询,用于检查undefined
数组和empty
数组:
if(array){
if(array.length > 0){
function1();
}else{
function2();
}
}else{
function2();
}
我试过类似的东西
if(array && ( array.length > 0)){
function1();
}else{
function2();
}
但没有骰子,则得到variable is undefined
错误。根据这个答案,if(variable)
在这个用例中运行得很好,但它只适用于字符串而不是数组。在这样的情况下,有没有办法在javascript中实现二合一?
我得到一个变量是未定义错误
这意味着array
根本没有在任何地方声明。为了防止这种情况,您可以使用typeof
:
if (typeof array !== "undefined" && array && array.length > 0)
实例|源
完全未定义的符号和解析为包含值undefined.
的变量的定义符号之间存在差异。你可以在任何事情上安全地使用typeof
,即使是在任何地方完全未声明的东西,但如果你试图读取未在任何地方声明的东西的值,你会得到ReferenceError
,说它不存在。
相关文章:
- 查找对象数组是否包含其中一个标记的最快方法
- 检查数组是否包含
- 确定数组是否包含偶数
- 在 JavaScript 中连接字符串或数组是否更快
- 检查对象数组是否具有所有必需的键
- 检查数组是否包含指定的对象
- 在通过套接字发送到客户端之前压缩中等大小的javascript数组是否值得
- 检查数组是否有空元素
- 检查输入框的数组是否为空
- 如何检查JSON数组是否等于
- 检查数组是否已定义并且具有长度
- 检查数组是否包含特定对象
- 什么'最合适的数据结构是什么?(使用一个有间隙的数组是否存在缺点或注意事项?)
- 如何检查子集数组是否包含超集数组之一
- 检查对象数组是否包含布尔值true/false
- 检查数组是否在MongoDB文档中包含帖子ID
- 检查数组是否包含允许或不允许的字符
- 检查 javascript 数组是否不仅包含空值
- 在循环时修改数组是否安全
- 列表/数组是否有效 JSON