我有一个像这样的数组:["abc", "cde", "efg"]
。
我想循环遍历一组元素,并将此数组中的字符串应用于每个n:th(数组的长度)元素。
<p>abc</p>
<p>cde</p>
<p>efg</p>
我所管理的是如何循环并将相同的字符串(最后一个)应用于每个元素,如:
<p>efg</p>
<p>efg</p>
<p>efg</p>
编辑:
目前我正在使用类似的东西:
for (var j = 0; j < noOfTableCells.length; j++) {
var heading = "";
for (var k = 0; k < myArray.length; k++) {
heading = headingArray[k];
}
}
但是我无法弄清楚如何将它带到每个n:th(在这种情况下为第3个)元素。
答案 0 :(得分:1)
循环浏览其他元素时,如果有与之关联的编号系统,则可以使用编号系统。否则,您可以使用C样式for循环遍历这些元素,如下所示:
var myArray = ["abc", "cde", "efg"];
var i;
for (i = 0; i < myArray.length; i++) {
var j = i % 3;
j = (i - j) + 2;
//do something with the element that you wanted
//do something with myArray[j];
}
答案 1 :(得分:1)
请参阅jsfiddle:
var elements = ["abc", "cde", "efg"].map(function(str) {
return '<p>' + str + '</p>';
});
elements.forEach(function(element) {
$('body').append(element);
});
或者你可以缩短它:
["abc", "cde", "efg"].map(function(str) {
return '<p>' + str + '</p>';
}).forEach(function(element) {
$('body').append(element);
});
这使用jQuery。如果你想成为一个超级随机的badass,你可以这样做(jsfiddle):
var elements = ["abc", "cde", "efg"].map(function(str) {
return '<p>' + str + '</p>';
}),
parser = new DOMParser();
elements.forEach(function(element) {
document.body.appendChild(parser.parseFromString(element, "text/xml").firstChild);
});
还有1000个其他随机或1000个其他更高效的解决方案。选择你的毒药。
答案 2 :(得分:0)
最终解决了以下问题:
var laps = totalItems / myArray.length;
for (var row = 0; row < laps; row++) {
for (var cell = 0; cell < myArray.length; cell++) {
//Do the stuff
}
}