javascript里面判断数组是否为空的天坑写法

nodejs qmt 38℃

在JavaScript中,根据弱类型的特性,非布尔值的数据类型在布尔上下文中会被转换为布尔值。在这种情况下,如果arr是一个空数组,它会被转换为布尔值false。

然而,if语句中的条件判断不仅仅检查布尔值。它还会执行隐式的类型转换。在JavaScript中,除了false、undefined、null、0、NaN和空字符串""之外的所有值都会被转换为true。

因此,即使arr是一个空数组,它在条件判断中会被转换为布尔值true,并进入if语句块中。如果你想检查数组是否为空,你可以使用arr.length属性来判断。例如:

if (arr) {
  // 即使 arr为空,也会进入到这个语句
} else {
  // 数组不为空
}

正确的写法:

if (arr.length > 0) {
  // 即使 arr为空,也会进入到这个语句
} else {
  // 数组不为空
}

转载请注明:QMT|Ptrade量化交易 » javascript里面判断数组是否为空的天坑写法

喜欢 (0)