为什么相加的时候就变成拼接了?谢谢老师!

为什么相加的时候就变成拼接了?谢谢老师!

var num1=10,
                num2="20";
            console.log(num1+num2);

做其他运算的时候,num2做了转换,为什么为什么相加的时候就变成拼接了?

正在回答

登陆购买课程后可参与讨论,去登陆

4回答

你好,因为num2是字符串,而加号,除了起到算数加的作用,还起到字符串拼接的作用。

祝学习愉快~

  • 小白123666 提问者 #1
    非常感谢!
    2018-01-16 08:40:21
  • gym要学习 回复 提问者 小白123666 #2
    字符串和数字直接相加,是把数字当成了字符串,这是JAVA的装箱机制,最终相当于字符串的连接,这不属于数学运算。
    2018-05-30 17:54:25
慕盖茨0186899 2018-05-31 20:35:57

因为num1是Number类型,num2是String类型,两者做不了算数运算,+自然成了连接符了


前端工程师Var 2018-05-29 21:40:41

主要是数据类型不同 num1数据类型是Number  ; num2数据类型是String ; Javascript在处理不同数据类型的时候是 +是连字符

渡____ 2018-05-23 18:30:28

只有相加的时候才会拼接

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
前端小白入门系列课程
  • 参与学习           人
  • 提交作业       11218    份
  • 解答问题       36713    个

从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师