JavaScript для цикла, относительно индекса - PullRequest
0 голосов
/ 18 октября 2011

Как изменить этот цикл, чтобы он работал только для i = 12, 18, 24, 30 и 36?

for (var i = 12; i < 36; i++) {
   console.log(i);
}

Ответы [ 4 ]

9 голосов
/ 18 октября 2011
for (var i = 12; i <= 36; i += 6) {

   console.log(i);

} 
3 голосов
/ 18 октября 2011

i++ в операторе for - это то, что нужно сделать перед следующей итерацией цикла. Так что в случае i++ мы увеличиваем переменную i на единицу. Поэтому, если вы хотите увеличить на шесть, вам нужно добавить 6 к переменной, которая даст вам:

for (var i = 12; i < 36; i += 6) {
    console.log(i);
} 

Далее, вы хотите включить 36, поэтому вам нужно изменить свое условие (бит вашего цикла, который говорит i < 36), чтобы включить 36. Это действительно просто, вам просто нужно изменить «меньше чем» «меньше или равно»:

for (var i = 12; i <= 36; i += 6) {
    console.log(i);
} 
1 голос
/ 18 октября 2011

В качестве альтернативы (хотя не обязательно лучше):

for(var i, values = [12, 18, 24, 30, 36]; i = values.shift();) {
    console.log(i);
}

Это показывает, что вам не нужно иметь увеличивающийся счетчик в цикле for.

1 голос
/ 18 октября 2011

Вместо того, чтобы делать i ++ в вашем цикле, делайте i + = 6. Вот так:

for (var i = 12; i < 36; i += 6) {
    console.log(i);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...