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

哪位大佬能给我解释一下,为什么声明变量result时要写成var result=0,而写成var result;时输出结果是1+2=12??

<!DOCTYPE html>

<html>

 <head>

  <meta charset="UTF-8">

  <meta name="Generator" content="EditPlus®">

  <meta name="Author" content="">

  <meta name="Keywords" content="">

  <meta name="Description" content="">

  <title> 事件</title>  

  <script type="text/javascript">

   function count(){

       

    var num1=parseInt(document.getElementById("txt1").value);//获取第一个输入框的值

var num2=parseInt(document.getElementById("txt2").value);//获取第二个输入框的值

var count1= document.getElementById("select").value;//获取选择框的值

var result=0;

switch(count1){

    case'+':

        result=num1+num2;

        break;

    case'-':

        result=num1-num2;

        break;

    case'*':

        result=num1*num2;

        break;

    case'/':

        result=num1/num2;

        break;

}//获取通过下拉框来选择的值来改变加减乘除的运算法则

    document.getElementById("fruit").value=result;//设置结果输入框的值 

    

   }

  </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 回答

“+”在JS中也会作为连接符使用,涉及到类型转换,想实现加法可以转换下类型,如:result=parseFloat(num1)+ parseFloat(num2);就能进行运算了。

2 回复 有任何疑惑可以回复我~

<!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 c = document.getElementById("select").value;

var a1 = Number(a);

var b1 = Number(b);

    var c,d;

    switch(c){

        case "+": d = a1 + b1; break;

        case "-": d = a1 - b1; break;

        case "*": d = a1 * b1; break;

        case "/": d = a1 / b1; break;

    }

    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>

   <input type='text' id='txt2' /> 

   <input type='button' value=' = ' onclick="count()"/> <!--通过 = 按钮来调用创建的函数,得到结果--> 

   <input type='text' id='fruit' />   

 </body>

</html>

字符串要转换成数字

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

举报

0/150
提交
取消

哪位大佬能给我解释一下,为什么声明变量result时要写成var result=0,而写成var result;时输出结果是1+2=12??

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