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

在case “+”中,我对a b进行了类型转换,为什么还是被当作字符串进行处理?

在case “+”中,我对a b进行了类型转换,为什么还是被当作字符串进行处理?

not_afraid 2016-04-28 11:35:58
<!DOCTYPE html><html> <head>  <title> 事件</title>    <script type="text/javascript">   function count(){      var a=document.getElementById("txt1").value;      var b=document.getElementById("txt2").value;    //获取第一个输入框的值 //获取第二个输入框的值    var ovalue=document.getElementById("select").value    var sum=; switch(ovalue)    {        case "+":            sum=parseInt(a)+parseInt(b);            break;        case "-":            sum=a-b;            break;        case "*":            sum=a*b;            break;        case "/":            sum=a/b;            break;    }    //获取选择框的值 //获取通过下拉框来选择的值来改变加减乘除的运算法则    //设置结果输入框的值     document.getElementById("fruit").value=sum;   }     </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>
查看完整描述

3 回答

?
qq_青枣工作室_0

TA贡献446条经验 获得超754个赞

var sum=;

这里就语法错误了。你要么 var sum; 或者 var sum=0;

查看完整回答
2 反对 回复 2016-04-28
  • not_afraid
    not_afraid
    var sum=""是不是就直接规定它是字符串类型了?
  • qq_青枣工作室_0
    qq_青枣工作室_0
    不是,JS里的变量可随时改变类型。var sum=""; sum=0; sum=true; sum=[]; sum = new Object(); 都可以。
?
not_afraid

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

问题已解决,不应该用var sum=来声明变量,但不知道为什么

查看完整回答
反对 回复 2016-04-28
?
Perona

TA贡献355条经验 获得超403个赞

代码没错呀,是不是页面没刷新。

还有这行代码是想干嘛 var sum=;

是想初始化,还是只是声明变量。

查看完整回答
反对 回复 2016-04-28
  • 3 回答
  • 0 关注
  • 1608 浏览
慕课专栏
更多

添加回答

举报

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