空的javascript数组被认为是字符串?

时间:2021-02-22 15:18:43

标签: javascript arrays

空的 JavaScript 数组是否被视为字符串?当我尝试对空数组执行增量操作时,它返回 "1"。我也很好奇为什么它不运行 catch 块。

let x=[]

try {
  x=x+1 
} catch(err){
  console.log(err)
}

console.log( typeof x, x);

1 个答案:

答案 0 :(得分:2)

+ 运算符首先将数组和数字强制转换为字符串。这会在数组上调用 toString,它在不带任何参数的情况下调用 join,从而得到 ""。连接 """1" 的结果是 "1"