使用 JavaScript 中的 slice()
和 push()
方法来实现这个功能。下面是一个示例代码:
function splitArray(arr, chunkSize) {
var result = [];
for (var i = 0; i < arr.length; i += chunkSize) {
var chunk = arr.slice(i, i + chunkSize);
while (chunk.length < chunkSize) {
chunk.push(null); // 补空
}
result.push(chunk);
}
return result;
}
// 示例用法
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
var result = splitArray(arr, 4);
console.log(result);
在上面的代码中,splitArray()
函数接受两个参数:待分组的数组 arr 和每组的大小 chunkSize。它使用 for 循环和 slice() 方法将原始数组切割成指定大小的多个子数组,并使用 while 循环将不足指定大小的子数组补充为空值(null)。最后,它将所有子数组存储在 result 数组中并返回。
使用上述示例代码,对于输入数组 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],将其分组为每组大小为 4 的子数组,并补空。输出结果如下:
[
[1, 2, 3, 4],
[5, 6, 7, 8],
[9, 10, null, null]
]
请注意,示例代码中使用 null 表示补充的空值,你也可以根据需要修改为空字符串 ‘’ 或其他特定值。