Javascript 在n个元素之后将数组分块

Javascript 在n个元素之后将数组分块,javascript,arrays,split,Javascript,Arrays,Split,我想将一个数组拆分为n部分,每个部分都打印在新行上。 假设我有以下数组,我需要五块一块的数组: var res = ["dog","bird","cat","bear","cow","fish","ape","worm","ant","fly"]; 那么期望的结果应该是: dog,bird,cat,bear,cow fish,ape,worm,ant,fly 当我运行这段代码时,我似乎只打印了最后一块 <p id="demo"></p> <script&g

我想将一个数组拆分为
n
部分,每个部分都打印在新行上。 假设我有以下数组,我需要五块一块的数组:

var res = ["dog","bird","cat","bear","cow","fish","ape","worm","ant","fly"];
那么期望的结果应该是:

dog,bird,cat,bear,cow
fish,ape,worm,ant,fly
当我运行这段代码时,我似乎只打印了最后一块

<p id="demo"></p>   
<script>  
    var res = ["dog","bird","cat","bear","cow","fish","ape","worm","ant","fly"];
    var i,j,temparray,chunk = 5;    
    for (i=0,j=res.length; i<j; i+=chunk) {
        temparray = res.slice(i,i+chunk) + "<br>";
        document.getElementById("demo").innerHTML = temparray;
    }  
</script>

var res=[“狗”、“鸟”、“猫”、“熊”、“牛”、“鱼”、“猿”、“蠕虫”、“蚂蚁”、“苍蝇”]; 变量i,j,temparray,chunk=5;
对于(i=0,j=res.length;i您忘记在
文档中添加
+
。getElementById(“demo”)。innerHTML=temparray;

var res=[“狗”、“鸟”、“猫”、“熊”、“牛”、“鱼”、“猿”、“蠕虫”、“蚂蚁”、“苍蝇”];
var i,temparray,chunk=5;
对于(i=0;i”;
document.getElementById(“demo”).innerHTML+=temparray;
}

必须连接才能获得现有的innerHtml

document.getElementById("demo").innerHTML += temparray;

只向
innerHTML
写入一次会更有效,而不是每行输出更新一次(这将迫使浏览器在每行输出后更新显示)。下面代码段中的for循环只是将每一行追加到
temparray
变量,而
innerHTML
仅更新一次——在for循环之后

var res=[“狗”、“鸟”、“猫”、“熊”、“牛”、“鱼”、“猿”、“蠕虫”、“蚂蚁”、“苍蝇”];
变量i,temparray=“”,chunk=5;
对于(i=0;i”;
}
document.getElementById(“demo”).innerHTML=temparray;

破坏性while-loop方法

var res=[“狗”、“鸟”、“猫”、“熊”、“牛”、“鱼”、“猿”、“蠕虫”、“蚂蚁”、“苍蝇”];
var chunks=[],chunk=4;
while(res.length){
chunk.push(res.splice(0,chunk.join)(','))
}
document.getElementById(“demo”).innerHTML=chunks.join(“
”);