把一个数组分块成指定大小的小数组。
使用 Array.from()
创建一个新的数组,它的长度就是生成 chunk(块) 的数量。 使用 Array.slice()
将新数组的每个元素映射到长度为 size
的 chunk 中。 如果原始数组不能均匀分割,最后的 chunk 将包含剩余的元素。
const chunk = (arr, size) => Array.from({ length: Math.ceil(arr.length / size) }, (v, i) => arr.slice(i * size, i * size + size) );
chunk([1, 2, 3, 4, 5], 2); // [[1,2],[3,4],[5]]