这是每次显示3个数组元素的正确方法吗?请参阅下面的演示
注意:更改数组项目可以添加或删除数组值,甚至可以更改itemsperow = 4以查看更改
的javascript
var index=0;
var arr=['a','b','c','d','e','f','g','h','i',10];
var tot =arr.length;
var itemsperow=3;
var loop=Math.round(tot/itemsperow);
//checking if remainder exist
if(tot%itemsperow!=0){
loop=loop+1;
}
for(i=1;i<=loop;i++)
{
console.log("<div>");
for(j=1;j<=itemsperow;++j){
if(index==tot){
break;
}
console.log('<span>'+arr[index]+'</span>');
++index;
}
console.log("</div>");
if(index==tot){
break;
}
}
答案 0 :(得分:1)
使用模数来检测何时输出每3项:
for (var i = 0; i < arr.length; i++) {
if ((i % itemsperrow) == 0) {
if (i != 0) { // Close last DIV
console.log('</div>');
}
console.log('<div>');
}
console.log(arr[i]);
}
if (i > 0) {
console.log('</div>');
}
答案 1 :(得分:0)
这就是你想要做的事情
var arr=['a','b','c','d','e','f','g','h','i',10];
for(i=0;i<arr.length;){
console.log('<div>');
for(j=0;i<arr.length && j<3;++i,++j){
console.log('<p>'+arr[i]+'</p>');
}
console.log('</div>');
}