-2

我想做一个循环 50 次的 for 循环,但我需要循环内的代码块仅在九的倍数上运行(9,18,27,36..)我该怎么做?

4

5 回答 5

2
for(var i=0; i<450; i+=9) {
   ...
}

或者,为了更好的可读性:

for(var nines = 0, loop_counter=0; loop_counter<50; loop_counter += 1, nines = loop_counter*9) {
   ...
}
于 2013-10-09T14:37:15.040 回答
2

像这样的东西:

for(var i = 0; i < 50; i++) {
    if (i % 9 == 0) {
        //code block here
    }
}
于 2013-10-09T14:37:35.953 回答
0
for (var i = 1; i <= 50; ++i) {
  (function(multipleOfNine) {
    // Do something with multipleOfNine
  }(i * 9));
}

我将您的问题解释为您想要遍历前 50 个 9 的倍数。如果您的意思是您只想要 50 岁以下九的倍数,那么请使用EnterSB 的答案

于 2013-10-09T14:37:41.270 回答
0
for(var i = 0; i < 50; i++) {
    if (i % 9 == 0) {
        console.log(i);
    }
}

小提琴

for(var i = 0; i < 450; i += 9) {
    console.log(i);
}

小提琴

于 2013-10-09T14:38:47.150 回答
-1

记录您所处的循环迭代(最简单的方法是将循环外的变量初始化为 0,然后每次通过循环时将其递增),然后使用 Modulo 检查它是否可被 9 整除。例如 x=i %9。如果 x 为 0,则 i 是 9 的倍数。

于 2013-10-09T14:38:09.880 回答