美文网首页
js中{}+[]、[]+{}、[]+[]、{}+{}

js中{}+[]、[]+{}、[]+[]、{}+{}

作者: binaryTree_fe | 来源:发表于2016-05-09 17:29 被阅读27次

1、{}+[]

1)以{}开头的会被解析为语句块

2)此时+为一元操作符,非字符串拼接符

3)[]会隐式调用toString()方法,将[]转化为原始值 ''

4)+'' 被转化为数字0

5)扩展:如果将其用()括起来,即({}+[]),此时会显示"[object Object]",因为此时{}不再被解析为语句块

2、[]+{}

1)[]会隐式调用toString()方法,将[]转化为原始值 ''

2){}会隐式调用toString()方法,将{}转化为原始值"[object Object]"

3)+为字符串拼接符

3、[]+[]

1)[]会隐式调用toString()方法,将[]转化为原始值 ''

2)+为字符串拼接符

4、{}+{}

1)以{}开头的会被解析为语句块,即第一个{}为语句块

2)此时+为一元操作符,非字符串拼接符

3)第二个{}会隐式调用toString()方法,将{}转化为原始值"[object Object]"

4)+"[object Object]"为NaN

相关文章

网友评论

      本文标题:js中{}+[]、[]+{}、[]+[]、{}+{}

      本文链接:https://www.haomeiwen.com/subject/jfyerttx.html