將 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 ] ]

更新於: 21-11-2020

714 次瀏覽

開啟你的職業生涯

完成學習並獲得認證

開始
廣告
© . All rights reserved.