1. ホーム
  2. javascript

[解決済み] Lodashを使用してJavaScriptの配列をチャンクに分割する

2023-01-28 07:18:27

質問

JavaScriptの配列を分割して n の大きさのチャンクに分割する必要があります。

例えば この配列が与えられると

["a1", "a2", "a3", "a4", "a5", "a6", "a7", "a8", "a9", "a10", "a11", "a12", "a13"]

というように n が4に等しい場合、出力はこのようになるはずです。

[ ["a1", "a2", "a3", "a4"],
  ["a5", "a6", "a7", "a8"],
  ["a9", "a10", "a11", "a12"],
  ["a13"]
]

純粋なJavaScriptを意識している ソリューション を使うこともできますが、私はすでに ロダッシュ を使用しているので、Lodash がこの問題に対してより良いソリューションを提供するかどうか疑問に思っています。

編集する

を作成しました。 jsPerfテスト を作成して、アンダースコアのソリューションがどれくらい遅くなるかをチェックしてみました。

どのように解決するのですか?

lodashの チャンク : https://lodash.com/docs#chunk

const data = ["a1", "a2", "a3", "a4", "a5", "a6", "a7", "a8", "a9", "a10", "a11", "a12", "a13"];
const chunks = _.chunk(data, 3);
console.log(chunks);
// [
//  ["a1", "a2", "a3"],
//  ["a4", "a5", "a6"],
//  ["a7", "a8", "a9"],
//  ["a10", "a11", "a12"],
//  ["a13"]
// ]
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.15/lodash.min.js"></script>