依据传入的size把第一个参数支解成包括size个数组的二维数组。
思绪纪录:先用Math.cail把数组根据第二个参数的请求拆离开,然后用splice把数组顺次支解出来并push到新数组里返回就能够了。
function chunk(arr, size) {
var arr1 = [];
var arr2 = [];
var arrl = Math.ceil(arr.length / size); //第一个参数除以第二个参数并向上舍入,向上舍入是为了存过剩的数组,比方7/3=2,然则还需要一个来存余出来的1
for (var i = 0; i < arrl; i++) {
arr2 = arr.splice(0, size); //arr2用来临时寄存每一次支解出来的数组,0是肇端位置,size是个数
arr1.push(arr2);
//console.log("\n" + "arr2:" + i + arr2);
}
//console.log("\n" + "arr1:" + arr1);
return arr1;
}
chunk(["a", "b", "c", "d"], 2);