<script type="text/javascript">
var tt=[1,2,3];
for(var i=0;i<tt.length;i++)
{
  var a+=tt[i]
  alert(a)
}
</script>

解决方案 »

  1.   

    var a=0;
    var tt=[1,2,3];
    for(var i=0;i<tt.length;i++)
    {
      a += tt[i];
      alert(a);
    }
      

  2.   

    起得真早……
    逻辑有问题,
    var a += tt[i];
    意思是
    var a = a + tt[i];
    a的初始值是什么呢?a都还没定义呢。要不就用
    var tt=[1,2,3];
    var a = 0;
    for(var i=0;i<tt.length;i++)
    {
      a+=tt[i];
      alert(a)
    }
      

  3.   

    var a=0;
    var tt=[1,2,3];
    for(var i=0;i<tt.length;i++)
    {
      a += tt[i];
      alert(a);
    }
      

  4.   

    牢记:javascript中,for语句里面的var关键字定义的变量,作用域并非只在for循环体内。
    var关键字定义的变量作用域在其所在的函数内。<script type="text/javascript">
    var tt=[1,2,3];
    for(var i=0;i<tt.length;i++)
    {
      (function(){
        var a+=tt[i]
        alert(a)
      })();
    }
    </script>
      

  5.   

    没有指定类型的。比如:var a;默认是object类型的。你写var a+=tt[i];那a到底是应该是String类型的,还是int 类型的呢?所以你先要给它赋值。比如:var a="";或者var a=0;
      

  6.   

    var a+=tt[i]
    等同于var a=a+tt[i] 肯定undefind