关于数字类型转换

mmexport1586731517702.jpg
为什么箭头所指会返回4,感觉不是很明白机制,请教一下思否的前端朋友帮我解惑谢谢。

阅读 2.1k
3 个回答

{b:4} 就相当于 {},表示一个空的代码块之类的,相当于啥也没有。
所以和 4 相加就返回 4 了

image.png
a={c:3}这个是一个变量,他的原型链中里面有toString()方法,转换出来是上图的第一种情况,字符串再和数字相加,就是字符串了,也就是图中的结果[object Object]4

等于4的那个表达式可以参考js是如何判断代码块的这个问题

加号优先作为运算符。把值转为数字,相当于Number(?)
然后作为连接符。把值转为字符串,相当于String(?)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题