有几个问题不懂

来源:6-11 编程练习

慕丝6245747

2016-04-29 10:51

<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 d="";

   switch(c){

    case "+":

    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;

   }

1.var a=document.getElementById("txt1").value;与document.getElementById("txt1").value=a这两种写法的区别是什么?为什么前一个可以运行,后一个不能?

2.var d=""这里代表什么意思?在后面再写document.getElementById("fruit").value=d,顺序可以改变吗?为什么不可以直接写成      var d=document.getElenmetById("fruit").value

3.若写成d=a+b,运算结果为d=ab,只有写成d=pareInt(a)+pareInt(b)结果才正确;而其余减法,乘法,除法直接写d=a-b;d=a*b;d=a/b就能行?  

              

写回答 关注

1回答

  • kuban
    2016-04-29 11:11:53
    已采纳
    1. 等号右边的值赋给等号左边,所以前者是在做获取document.getElementById("txt1")的value值,赋给a,后者做的是把a的值赋给document.getElementById("txt1").value,此时a没有值。

    2. 声明一个d,是个字符串,暂时没内容,顺序不可变,因为是2个意思,上面说了

    3. 因为+的时候会被当做2个字符串相连,所以需要转换一下告诉程序我这是要进行加法运算。字符串相连不就是"我是字符串1"+"我是字符串2"吗,其他3种运算符没有这种功能,不需要额外区分

      等号左右这个,你可以理解成右边的东西给左边,a=b是b给a值,b=a就是a给b值了,我的钱给你跟你的钱给我显然是2个事,顺序自然不能更改,谁在左边谁获得

    慕丝6245... 回复kuban

    明白了。谢谢!

    2016-04-29 17:15:53

    共 3 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468195 学习 · 21891 问题

查看课程

相似问题