如何在javascript中像这样循环? 11 21 32 43
我已经有了这段代码。
for(var i=11; i <= 43; i += 10){
document.write(i+'<br>');
}
答案 0 :(得分:3)
如果你想先添加10,然后再添加11,那么你的循环将如下所示。但请注意,它会循环到44而不是43,因为你要添加12到32:
j = 10;
for(var i=11; i <= 44; i += j++){
document.write(i+'<br>');
}
稍作改动应该能够准确地给出您所描述的内容。而不是有一个额外的变量'j',你可以只增加10 +的东西。在你的情况下,当i == 11时,你的情况是0,如果是i>,则是1。 11.这可以写成单个布尔表达式,在计算中计算时将转换为0或1。所以下面的代码片段会给你11,21,32,43。
for (var i = 11; i <= 43; i += (10 + (i>11))) {
document.write(i + '<br>');
}
在另一个变体中,您总是可以添加11,但是在10处开始,并在第一次迭代时添加一个。这也会给你一个奇怪的序列11,21,32,43,但我认为上面的片段更清晰。
for (var i = 10; i <= 43; i += 11) {
document.write((i + (i==10)) + '<br>');
}
无论如何,没有必要做一个奇特的循环。您也可以编写更多代码并以可读和可理解的方式实现逻辑。也许在循环中使用'if'来影响i
。