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

关于parseInt函数的相关问题

   function count(){

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

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

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

         var d4;

    switch(d3){

    case "+" :d4=parseInt(d1)+parseInt(d2);break;

    case "-" :d4=parseInt(d1)-parseInt(d2);break;

    case "*" :d4=parseInt(d1)*parseInt(d2);break;

    case "/" :d4=parseInt(d1)/parseInt(d2);break;    

    }

    document.getElementById("fruit").value=d4;


我只设置d4变量,没指明他是什么类型的,parseInt函数返回的是数值,d4=parseInt(d1)/parseInt(d2);break,那d4也应该是数值。我看同学代码排行第一的那位,d4指明是字符串类型(var d4=""),他写的也是d4=parseInt(d1)/parseInt(d2);break,但是parseInt返回的是数字啊。为什么它的代码没有错,并且也能正常运行??第二个问题是设置的value是返回输入值的,这个输入值只能被识别成字符串类型吗?

    


提问者:无敌小哥儿 2016-09-29 23:23

个回答

  • iTusir
    2016-10-01 20:59:03
    已采纳

    第一个问题我应该是没有理解错的

    var 定义了之后没必要纠结它的数据类型,它不是Java也不是c 

    d4指明是字符串类型(var d4="")      //虽然我不知道你怎么看出它是字符串,就算它现在已经被字符串赋值,

    那么再被数字重新赋值也是没问题的http://img.mukewang.com/57efb28e0001c40007370373.jpg

    第二个问题 自己也不很确定;

  • 无敌小哥儿
    2016-10-02 00:20:58

    var d4=""           ;d4是字符串类型,只不过是空字符串,W3C里面看的http://www.w3school.com.cn/js/js_variables.asp

  • iTusir
    2016-09-30 09:15:46

    parseInt返回的是int类型

    d4是个变量名,  var d4 = ""; 就是定义了一个叫d4 的变量,也可以直接 var d4;  

    d4可以被字符串赋值,可以被数字赋值。

    不懂看这个  http://www.imooc.com/code/404

    value跟什么类型?没懂你意思,这里value应该就是被用来返回输入的值的。

    如有错误,望指正