在JavaScript中将项目数组拆分为N个数组

我们需要编写一个JavaScript函数,该函数将数字数组拆分为N个组,必须按从大到小的顺序进行排序。

例如,在下面的代码中,将12个数字组成的数组拆分为5个数组,结果应从大(组)到小均等地划分:

const arr = [1,2,3,4,5,6,7,8,9,10,11,12];
const output = [[1,2,3] [4,5,6] [7,8] [9,10] [11,12]];

该函数应将数组作为第一个参数,并将分区数作为第二个参数。

示例

为此的代码将是-

const arr = [1,2,3,4,5,6,7,8,9,10,11,12];
const chunkArray = (arr = [], chunkCount) => {
   const chunks = [];
   while(arr.length) {
      const chunkSize = Math.ceil(arr.length / chunkCount−−);
      const chunk = arr.slice(0, chunkSize);
      chunks.push(chunk);
      arr = arr.slice(chunkSize);
   };
   return chunks;
};
console.log(chunkArray(arr, 5));

输出结果

控制台中的输出将是-

[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8 ], [ 9, 10 ], [ 11, 12 ] ]