为了账号安全,请及时绑定邮箱和手机立即绑定

为什么a+b不对,必须要写parseInt(a)+parseInt(b)

a=1 b=1

如果a+b则得11

parseInt(a)+parseInt(b)=2

正在回答

2 回答

a,b在取出来的时候,是String类型的,

"1"+"1"="11"        =>  "中"+"国"="中国"

通过parseInt()方法将String转化为int  才真正是数字相加

1+1=2

2 回复 有任何疑惑可以回复我~
#1

慕函数0287492

你好我想问下,像你说的a和b在取出来的时候是str, 那么: a=2;b=3; var c=a+b; document.write(c) 这几行代码输出为什么直接就等于5而不等于23了呢?什么情况下出来的是str呢?麻烦解惑 谢谢了
2018-02-09 回复 有任何疑惑可以回复我~
#2

慕仰7311029 回复 慕函数0287492

任何从文本框中取出的数据均默认为string类型,要计算必须转换为数据类型才可以;而你提出的这个例子本身就是将数据设为了int或者double类型,无需转换
2018-02-23 回复 有任何疑惑可以回复我~

没有原始代码不清楚,不过你的ab值应该都是字符串,才会导致

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么a+b不对,必须要写parseInt(a)+parseInt(b)

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信