问答详情
源自:7-23 编程练习

请教哪位大侠,var sum 定义变量问题。

  var sum=0;
  var av=0;
  for(var i=0;i<myc.length;i++)
  {
      var sco=myc[i].indexOf(":");
      sum +=parseInt(myc[i].substr(sco+1,2));
      }
      av=sum/myc.length;
      av=Math.floor(av);
      document.write("--班级总分为:"+av);

最上面的定义变量,为什么要给他赋值?不能是var sum;    var av;  然后下面赋值。

提问者:qq_小园香径_04207041 2016-11-01 16:09

个回答

  • 落日无声
    2016-11-01 17:03:59
    已采纳

    上面定义的是全局变量,可以不赋值,但系统会自动给它赋值  应该赋值为undefined

    你也可以在函数体内进行赋值,这是没有问题的。

    至于你说为什么你要在前面给他赋值,你可以想想,javascipt定义的变量是可以存任何类型的,如果你定义的sum本来想存数值类型,而你在后面写程序的过程中无意给他赋值为字符串,那他就的值就是字符串,到时候出错,你都不知道在哪儿。

    你可以暂时不用这个变量,但是你作为编程人员,你是知道你想要它做什么,所以,暂时不用时,最好赋值,数字的就赋值为0,字符串就赋值为Null,等

  • V这个夏天有点冷V
    2016-11-01 17:30:10

    写法习惯问题,var只是定义一个变量,不需要赋值

  • qq_超人不爱飞_03420911
    2016-11-01 16:54:41

    先赋值 然后才能使用

    for循环可能执行不了 在for循环里面赋值 外面也没法使用。