行梦者
2017-07-27 17:05
a+b出来的结果总是
比如a=3 b=6,结果则是36
parseInt()是转化为整形了,但是计算的时候我们肯定会遇到小数点,所以还是转化为浮点型比较好吧。
var txt1 = parseFloat(document.getElementById('txt1').value);
var txt2 = parseFloat(document.getElementById('txt2').value);
从输入框里获取的是字符串(String)类型,如果要做算法,需要先将字符串类型数据转化成数字类型。用parseInt()可以将字符类型转化成整数类型,你的代码可以这样写
var a = parseInt(document.getElementById("txt1").value);
var b = parseInt(document.getElementById("txt2").value); ,然后运行就正确,或者你在运算的时候,每次都用parseInt(a)将a转化一下,再进行运算
value属性返回的是字符串类型,“+”可以连接字符串,所以你的结果显示36。要用parseInt()函数转换成整型,你的第16行要写成num = parseInt(a) + parseInt(b).任务里也有提示
JavaScript进阶篇
468060 学习 · 21891 问题
相似问题