现在想把一个数组根据指定大小进行分割,chunk(arr, 10)把数组分割成每块总和小于等于10,请教各位大神let arr = [15,1,3,4,3,4,10,7,19]
function chunk(arr, sum) {
}// [[15], [1, 3, 4], [3, 4], [10], [7], [19]]
1 回答
收到一只叮咚
TA贡献1821条经验 获得超4个赞
let arr = [15, 1, 3, 4, 3, 4, 10, 7, 19];let chunk = arr.reduce((arr, num) => { const n = arr[arr.length - 1]; if (n.length && n.reduce((a, b) => a + b, num) > 10) { arr.push([num]); } else { n.push(num); } return arr; }, [[]]); console.log(chunk);
添加回答
举报
0/150
提交
取消