我写了这段代码,有人可以解释一下我在每次迭代时的增量是如何起作用的:
function chunk(array, size) {
let chunked = [];
for (i = 0; i < array.length;) {
chunked.push(array.splice(i, size));
}
return chunked;
}
let a = chunk([1, 2, 3, 4, 5, 6, 7, 8], 2);
console.log(a);
答案 0 :(得分:1)
您的“array.splice”会从数组中删除“size”元素。 size是你的chunk函数的参数。
https://www.w3schools.com/jsref/jsref_splice.asp
这意味着每次迭代后,array.length的“大小”都会缩短。 当数组包含0个元素时,循环结束。
在您的示例中,块函数在每个迭代步骤中从数组中删除2个元素。