Javascript:我不知道为什么迭代0

时间:2017-03-18 06:13:19

标签: javascript

function a (){
    i = 0;
}
for(i = 0; i < 5; i++){
    a();
    document.write(i);
}

我预计它会迭代&#39; <&#39; 。但我的网络浏览器并没有显示任何内容。它最终会被困在一个循环中。

2 个答案:

答案 0 :(得分:1)

没有显示任何内容,因为再次调用a()并且每次i变为0.因此它会一次又一次地循环。

请勿运行代码,否则浏览器将挂起

function a (){
    i = 0;
  }
  for(i = 0; i < 5; i++){
      a();
     console.log(i);
  }

答案 1 :(得分:0)

由于您是初学者,请尝试使用不同的方法对相同的代码段进行编码,以便您可以了解更多功能。

    function a (){
       console.log("inside a(): "+i);
       i = 0;
    }
  for(i = 0; i < 5; i++){
      a();
      console.log("inside for():"+i);
  }

这里console.log()是在浏览器的Console中打印结果而不是在DOM中打印。 理解你学到的东西是更简单的方法。 Infinite Loop in Javascript