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

5加2算出来为什么是52?减乘除都可以实现

  <script type="text/javascript">

   function count(){

    var a=document.getElementById("txt1").value;

    var b=document.getElementById("txt2").value;

    var c=document.getElementById("select").value;

    var d;

    switch(c){

        case "+":d=a+b;break;

        case "-":d=a-b;break;

        case "*":d=a*b;break;

        case "/":d=a/b;break;

    }

    document.getElementById("fruit").value=d;

   }

  </script> 


正在回答

3 回答

因为document.getElementById("txt1").value获取的其实是一个字符串的值,所以当是加法的时候运算符其实是调用了两个字符的toString()然后拼接成一个字符

你可以用parseInt()或者parseFloat(),将值变成number类型的,也可以写成d=0+a+b;

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

qq_多啦曾经不懂a梦_0 提问者

非常感谢!
2017-05-13 回复 有任何疑惑可以回复我~
#2

Levier007

请问 那为什么乘除减不会出现这种情况? 乘除减提取的也是字符串啊
2017-05-13 回复 有任何疑惑可以回复我~
#3

慕勒7123956 回复 Levier007

因为有关字符串的运算里面没有乘法,就是然后就调用的valueOf()方法
2017-05-14 回复 有任何疑惑可以回复我~

一样的问题;mark

0 回复 有任何疑惑可以回复我~
刚才试了一下,d=0+a+b;竟然不行了,还是用d=parseFloat(a)+parseFloat(b);
0 回复 有任何疑惑可以回复我~
#1

我们都变了

加法式子里只要有字符串,自动把数字转换成字符串,不管顺序怎么变化
2017-05-14 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

5加2算出来为什么是52?减乘除都可以实现

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