【问题标题】:JS: Why FOR LOOP loops once? [closed]JS:为什么 FOR LOOP 循环一次? [关闭]
【发布时间】:2014-03-02 09:06:10
【问题描述】:

为什么我在运行这段代码后只收到一个警报:

var poly = function()
{
   this.disp = function()
   {
      for(var i=0; i<6; i++);        //And I already found my problem. It is this ';'
      {
           alert('The number is '+i);        //I get one alert: 'The number is 6'
      } 
   }
}

test = new poly();
test.disp();

感谢您的帮助!

【问题讨论】:

  • 为我工作 -> jsfiddle.net/FvVb2
  • 您在代码的什么地方使用了这个代码?我只是将它复制并粘贴到控制台,我收到了 6 个不同的警报。我真的很重要你如何在你的实际代码中使用它。
  • 我很困惑。是的,在小提琴作品中。在 poly 对象中有更多的函数和方法,而不仅仅是 'this.disp'。但我不认为其他方法中的另一个循环会在 disp 函数中产生问题。因为当我在循环之前检查'i'时,我得到'i未定义'的错误。所以'i'在循环开始时为0。
  • 不要使用alert(),而是使用console.log()

标签: javascript loops object for-loop


【解决方案1】:

此代码有效。可能,在您的真实代码中,它看起来像这样:

var poly = function()
{
   this.disp = function()
   {
      for(var i=0; i<6; i++)
      {
      } 
      alert('The number is '+i);        //I get one alert: 'The number is 6'
   }
}

这将导致 i 从 0 循环到 6,之后它会被警告一次。

【讨论】:

  • 非常感谢!!这是我的眼睛问题:D 我的代码是:for(var i=0; i
  • :) 下次,请确保您发布的 sn-p 包含实际错误,否则我们将在大海捞针中寻找不存在的针。 ;)
  • @EdvinasPranka 试试这个演示(现在它使用 console.log)jsbin.com/bebem/1/edit?js,console 但如果你改为 alert() 它只会显示The number is 0
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-10-17
  • 2018-04-30
  • 1970-01-01
  • 2017-10-13
  • 1970-01-01
  • 1970-01-01
  • 2023-04-03
相关资源
最近更新 更多