Javascript 循环通过两个不同大小的数组,同时重复数组1的值

Javascript 循环通过两个不同大小的数组,同时重复数组1的值,javascript,Javascript,嗨,我是一个编程新手,遇到了循环问题。 我有两个阵列: colour = ['red','blue','green','orange']; rows = [1,2,3,4,5,6,7,8,9,10,11...]; 我想让每一行元素对都有一个来自颜色数组的颜色,例如开始 rows[0]=>colours[0], rows[1]=>colours[1], rows[2]=>colours[2], rows[3]=>colours[3], rows[4]=>colour

嗨,我是一个编程新手,遇到了循环问题。 我有两个阵列:

colour = ['red','blue','green','orange'];
rows = [1,2,3,4,5,6,7,8,9,10,11...];
我想让每一行元素对都有一个来自颜色数组的颜色,例如开始

rows[0]=>colours[0],
rows[1]=>colours[1],
rows[2]=>colours[2],
rows[3]=>colours[3],
rows[4]=>colours[0],
rows[5]=>colours[1],.....

我基本上想在颜色用完后开始迭代,你可以迭代所有行并按顺序分配颜色。完成collor数组后,只需重置其索引

    var colorIndex = 0;
    for (var i=0; i<rows.length; ++i)
     {
         row[i] = colours[j]; //use the color for the current row
         j++;
         if (j == colours.length) //when you reached the last colour 
          {
              j = 0; //reset colour index.
          }
    }
var colorIndex=0;

对于(var i=0;i您可以遍历所有行并按顺序分配颜色。完成collor数组后,只需重置其索引

    var colorIndex = 0;
    for (var i=0; i<rows.length; ++i)
     {
         row[i] = colours[j]; //use the color for the current row
         j++;
         if (j == colours.length) //when you reached the last colour 
          {
              j = 0; //reset colour index.
          }
    }
var colorIndex=0;

对于(var i=0;i可能是这样的:

var i,
    rowCount,
    colour,
    rows;
colour = ['red', 'blue', 'green', 'orange'];
rows = [];
rowCount = 20;
for (i = 0; i < rowCount; i++) {
    rows[i] = colour[i % colour.length];
}
vari,
行数,
颜色,
排;
颜色=[‘红色’、‘蓝色’、‘绿色’、‘橙色’];
行=[];
行数=20;
对于(i=0;i

这项工作的关键是模运算符(除法后的余数)。
i%color.length
i
除以
color.length
的余数,它与
color
的索引有关,可能与以下内容有关:

var i,
    rowCount,
    colour,
    rows;
colour = ['red', 'blue', 'green', 'orange'];
rows = [];
rowCount = 20;
for (i = 0; i < rowCount; i++) {
    rows[i] = colour[i % colour.length];
}
vari,
行数,
颜色,
排;
颜色=[‘红色’、‘蓝色’、‘绿色’、‘橙色’];
行=[];
行数=20;
对于(i=0;i

此工作的关键是模数运算符(除法后的余数).
i%color.length
i
除以
color.length
的余数,它与
color
的索引有关。我得到了完全相同的答案,但在我即将提交我的答案时看到了你的答案……感谢你的快速回答。你可能可以使用
i
而不是
rowCount
.@ArthurMigdal,我考虑过了,但随着行被覆盖,长度似乎更像是作为外部输入输入的。多亏了一百万,它工作起来很有魅力。每天都是上学日:)我得到了完全相同的答案,但在我即将提交我的答案时看到了你的答案…感谢你的快速回答。你可能可以使用
I
而不是
rowCount
@ArthurMigdal,我认为,但是随着行被覆盖,似乎更可能的是长度作为外部输入。非常感谢,每天都是学校的一天:)
rows.forEach(函数(v,i){rows[i]=color[i%4];})
rows.forEach(函数(v,i){rows[i]=color[i%4];})