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

做一个计算器的练习题,用if...else做可以么?

<script type="text/javascript">
   function count(){
    var a = document.getElementById("txt1").value;
    var b = document.getElementById("txt2").value;
    var c = document.getElementById("select").value;
    if(c==+){
        d=parseInt(a)+parseInt(b);
    }
    else if(c==-){
        d=parseInt(a)-parseInt(b);
    }
    else if(c==*){
        d=parseInt(a)*parseInt(b);
    }
    else{
        d=parseInt(a)/parseInt(b);
    }
    document.getElementById("fruit").value=d;
   }
  </script>
 </head>
 <body>
   <input type='text' id='txt1' />
   <select id='select'>
        <option value='+'>+</option>
        <option value="-">-</option>
        <option value="*">*</option>
        <option value="/">/</option>
   </select><br/>
   <input type='text' id='txt2' />
   <input type='button' value=' = ' onclick="count()" /><br/> <!--通过 = 按钮来调用创建的函数,得到结果-->
   <input type='text' id='fruit' />   
 </body>

我用这个方法做,第一遍是可以正常运行的,但是刷新后就无法运行了,请问是为啥?我觉得if...else在这个逻辑上是通的啊!

正在回答

2 回答

这个练习题可以用if……else if……结构来做,用switch来判断加减乘除等运算符还更简单些。

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

百丈冰

另外,我运行了一下你的代码, + - * / 这些铺好需要用引号引起来,这些事字符串。如:if(c=='+'){}.这样你的代码就没有问题了。
2016-04-18 回复 有任何疑惑可以回复我~
#2

顾五丑 提问者

我感觉if...else更加简单一些。。。我去加一下引号试试。感谢你的解答啦!
2016-04-19 回复 有任何疑惑可以回复我~

除数为零你们考虑了吗?

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

顾五丑 提问者

去试了一下,两种方法得出的结果都是Infinity
2016-04-22 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

做一个计算器的练习题,用if...else做可以么?

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