【问题标题】:Javascript "For loops" difference between i-5 and i=-5 [closed]i-5和i = -5之间的Javascript“For循环”区别[关闭]
【发布时间】:2015-03-30 02:58:18
【问题描述】:

我想要一个以i=100 开头的循环,每次迭代递减 5。但是,这会产生错误:

 for(var i=100;i>=1;i-5)
    {
        document.write(i+"<br />");
    }

但 'i=i-5' 有效:

for(var i=100;i>=1;i=i-5)
    {
        document.write(i+"<br />");
    }

为什么?

问题是我们如何将变量分配给变量 i=i-5。我回答的问题是我教的“i=i-5”是一个表达式 i 变量的值是 i-5 并且没有计算发生它只是一个稳定的变量。 答案是它取一个 i 值并减去 5 而不是赋值。

【问题讨论】:

  • 您可能是想输入i = i - 5
  • 您可能正在寻找i -= 5,它将在循环的每次迭代中将i 的值减少5,但这个问题很难理解。 i - 5 没有分配任何东西,所以i 的值不会改变。这将导致无限循环。

标签: javascript html for-loop


【解决方案1】:

如果你只写 i - 5,则没有左手变量,这意味着没有任何东西将 i 的值减去 5。如果你写 i = i - 5,那么你将减少 5因为你现在有一个左侧变量。

【讨论】:

  • 如果我分配 i=i-5 那么我们将 i 的值更改为 i-5。我们想要 i=100-5。我们如何将一个变量分配给它的同一个变量?我=我
  • 另外,需要指出的是,for 循环头部的第三部分在每次执行循环体之后都会执行。 @JessePinkman 请阅读how for loops work
  • i 最初是 100,所以这是右边 i 的值,所以你得到 i = 100 - 5,这使得 i = 95。下一个循环你将有 i = 95 - 5得到 90,依此类推。
猜你喜欢
  • 1970-01-01
  • 2011-01-24
  • 1970-01-01
  • 1970-01-01
  • 2023-03-29
  • 1970-01-01
  • 2014-01-24
  • 1970-01-01
  • 2020-02-26
相关资源
最近更新 更多