一个 for 循环可以增加/减少一个以上吗?

新手上路,请多包涵

除了 fori++ 之外,还有其他方法可以在 Javascript 中增加 ++i 循环吗?例如,我想增加 3 而不是 1。

for (var i = 0; i < myVar.length; i+3) {
   //every three
}

原文由 brentonstrine 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 834
2 个回答

使用 += 赋值运算符

 for (var i = 0; i < myVar.length; i += 3) {

从技术上讲,您可以在 for 循环的最终表达式中放置您想要的任何表达式,但它通常用于更新计数器变量。

有关 for 循环的每个步骤的更多信息, 请查看 MDN 文章

原文由 Andrew Whitaker 发布,翻译遵循 CC BY-SA 3.0 许可协议

一个 for 循环:

 for(INIT; TEST; ADVANCE) {
    BODY
}

意思如下:

 INIT;
while (true) {
    if (!TEST)
        break;
    BODY;
    ADVANCE;
}

您几乎可以为 INIT BODY TESTADVANCE

请注意 ++ 运算符和变体是具有副作用的运算符(如果您不使用它们,应该尽量避免它们,如 i+=1 等):

  • ++i 表示 i+=1; return i
  • i++ 表示 oldI=i; i+=1; return oldI

例子:

 > i=0
> [i++, i, ++i, i, i--, i, --i, i]
[0, 1, 2, 2, 2, 1, 0, 0]

原文由 ninjagecko 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题