如何把对象数组进行切割,变成四个为一组的对象数组
const arr = [{a:1,b:2,c:3},{a:1,b:2,c:3},{a:1,b:2,c:3},{a:1,b:2,c:3},{a:1,b:2,c:3},{a:1,b:2,c:3},{a:1,b:2,c:3},{a:1,b:2,c:3},{a:1,b:2,c:3}]
const len = arr.length
let result = []
const sliceNum = 4
for(let i = 0; i < len / sliceNum; i++){
result.push(arr.slice(i * sliceNum, (i+1) * sliceNum))
}
for(let j = 0; j < (sliceNum - len % sliceNum); j++) {
result[result.length - 1].push({})
}
console.log(result)
Array slice() 方法
返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。slice
不会修改原数组,只会返回一个浅复制了原数组中的元素的一个新数组。