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

夭寿啦,1+2=12啦。我做计算器的时候,加法默认为字符串的连接怎么破

夭寿啦,1+2=12啦。我做计算器的时候,加法默认为字符串的连接怎么破

秋高水长 2016-03-12 12:12:12
<!DOCTYPE html> <html>  <head>   <title>计算器</title>     <script type="text/javascript">    function count(){             //获取第一个输入框的值     var first=document.getElementById('txt1').value; //获取第二个输入框的值     var second=document.getElementById('txt2').value; //获取选择框的值     var select1=document.getElementById('select').value; //获取通过下拉框来选择的值来改变加减乘除的运算法则     //设置结果输入框的值  var val; switch (select1) {  case '+' :     val=first + second;break;      case '-' :     val=first - second;break; case '*' :     val=first * second;break; case '/' :     val=first / second;break; } document.getElementById('fruit').value=val;    }     </script>   </head>   <body>    <input type='text' id='txt1' />     <select id='select'> <option value='+'>+</option> <option value="-">-</option> <option value="*">*</option> <option value="/">/</option>    </select>    <input type='text' id='txt2' />     <input type='button' value=' = ' onclick='count()'/> <!--通过 = 按钮来调用创建的函数,得到结果-->     <input type='text' id='fruit' />     </body> </html>
查看完整描述

2 回答

已采纳
?
追梦人_dreamer

TA贡献1条经验 获得超4个赞

使用parseFloat()函数进行强制类型转换,将输入框里的值转换为浮点数就可以进行相加。val=parseFloat(first)+parseFloat(second);试试看。

查看完整回答
4 反对 回复 2016-03-12
?
qq_大寒_2

TA贡献173条经验 获得超185个赞

   JS运算碰到加法运算默认是字符串类型的,其他-,*,/默认是number类型,自己可以弹弹试试看。优先级就是碰到string和number,string优先。

 alert((first+second-first));  //运算过程 '1'+'2'='12',12-1=11
      alert(typeof (first+second-first)); 
      alert(typeof (first-second));
      alert(typeof (first*second));    
      alert(typeof (first/second));    
    document.getElementById('fruit').value=val;
   }


查看完整回答
反对 回复 2016-03-12
  • 秋高水长
    秋高水长
    那么该怎么解决优先级的问题?
  • qq_大寒_2
    qq_大寒_2
    这样可以判断。 if(typeof(first+second)==typeof(first-second)){ alert(typeof(first-second)); }else{ alert(typeof(first+second)); }; typeof(first-second)一定是number类型.typeof(first+second)可能是number也可能是string.
  • 2 回答
  • 0 关注
  • 1545 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信