根据传入的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);