问答详情
源自:6-11 编程练习

求指教!!!

请问各位,为什么要有{var result;document.getElementById('fruit').value=result}这个步骤,为什么不能直接{var result=document.getElementById('fruit')}?

提问者:DHWI 2016-10-26 10:10

个回答

  • 殷浩
    2016-10-28 13:46:01
    已采纳

    这里主要是赋值的问题,两个语句都分析一下吧

    第一条语句:一开始是声明了d这个变量用来接收结果值,也就是说两个文本框的变量经过加减乘除的操作之后赋值给d,d是最终的结果值,此时将d赋值给结果框,就是要的最终结果了。

    第二条语句:只是将fruit这个文本框里的内容赋值给了变量d,而此时的文本框里是没有内容的,后面的操作(即进行加减乘除),都是对d进行的操作,与fruit那个文本框无关了,所以这种会失败

  • 殷浩
    2016-10-28 14:00:25

    这里主要是赋值的问题,两个语句都分析一下吧

    第一条语句:一开始是声明了d这个变量用来接收结果值,也就是说两个文本框的变量经过加减乘除的操作之后赋值给d,d是最终的结果值,此时将d赋值给结果框,就是要的最终结果了。

    第二条语句:只是将fruit这个文本框里的内容赋值给了变量d,而此时的文本框里是没有内容的,后面的操作(即进行加减乘除),都是对d进行的操作,与fruit那个文本框无关了,所以这种会失败

  • 小胖爱美丽
    2016-10-26 15:13:55

    为什么要有这一步的原因。

    document.getElementById("fruit").value = d //将变量d的值赋给那个叫fruit的文本框
    var d=document.getElementById("fruit").value //将fruit文本框的值赋给变量d

    以上两句代码的逻辑是不一样的。

  • DHWI
    2016-10-26 10:26:03

    <!DOCTYPE html>

    <html>

     <head>

      <title> 事件</title>  

      <script type="text/javascript">

       function count(){

           var d = "";

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

        //获取第一个输入框的值

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

    //获取第二个输入框的值

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

    //获取选择框的值

        switch(c)

    {

         case "+":

         //d = a + b;

         d = parseInt(a)+parseInt(b);

         break;

         case "-":

         d = a-b;

         break;

         case "*":

         d = a*b;

         break;

         default:

         d = a/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>

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

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

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

     </body>

    </html>

    我想说的是这个案例中为什么 要有var d = ""; document.getElementById("fruit").value   = d;这一步?为什么不能直接var d=document.getElementById("fruit").value  ?

  • daidai1116
    2016-10-26 10:19:08

    赋值运算时从等号右边往等号左边运算的。前面的是把result赋值给fruit的值。后一个时取fruit的值赋值给result。