2014-10-31 279 views
0

的图案的第一数量的增加应该是如下JS循环,递增每3个循环,而是由一个

k_1_1 k_1_2 k_1_3

k_2_1 k_2_2 k_2_3

我可以创建第一块,但无法弄清楚如何创建一个循环继续前进。

任何帮助,将不胜感激。

<script> 
for (var x = 1; x <= 3; x++){ 
    var x2 = 0; x2 <=3; x2++; 
    var thisKName = "k_" + x2 + "_" + x + "<br>"; 
    document.write(thisKName); 
} 
</script> 

回答

0

嵌套循环:

for (var x = 1; x <= 3; x++){ 
    for(var x2 = 0; x2 <=3; x2++){ 
     var thisKName = "k_" + x + "_" + x2 + "<br>"; 
     document.write(thisKName); 
    } 
} 
+0

我真的觉得自己像个烂脸,非常感谢。 – user2680821 2014-10-31 12:57:31

+0

请记住,使用较大数据集时,多个嵌套for循环可能会降低性能。 – 2014-10-31 13:00:38

+0

简单的监督。如果这是今天发生的最糟糕的事情,那么你是一个幸运的人。 – ethrbunny 2014-10-31 13:24:26

1

初始化您的计数器变量的外部for循环。然后在for循环中,有一个if语句来检查该步骤中的x的值是否可以被3整除。x % 3 = 0表示没有余数并且可以被3整除。递增计数器变量。

var i = 0; 
for(var x = 1; x <= 3; x++) { 
    if((x - 1) % 3 == 0) { 
     i = i + 1; 
    } 
    var thisKName = "k_" + x + "_" + i + "<br>"; 
    document.write(thisKName); 
} 

EDIT

更新了功能以包括文件撰写并避免i从递增到2时x = 3和搞乱了结构。

+1

为了完整起见,您应该尝试添加document_write部分,但是当我看到您的部分时,我即​​将发布相同的答案。模数运算符('%')的确是这样。 – 2014-10-31 12:59:14

+0

已更新。感谢您指出。 – Paul 2014-10-31 13:09:20

+0

现在你已经在你的代码中的错误,你使用了'“'不少。 – 2014-10-31 13:13:15