JavaScript 配列をチャンクに分割する方法について大きな疑問があります。私は現在、私が書いているいくつかの統計的方法にこれを使用しており、私が使用している答えは次のとおりです(ただし、答えのように配列プロトタイプを拡張しないことを選択しました):
var chunk = function(array, chunkSize) {
return [].concat.apply([],
array.map(function(elem,i) {
return i%chunkSize ? [] : [array.slice(i,i+chunkSize)];
})
);
};
これは、 などの配列を取り、2[1,2,3,4,5,6]
の a が返されると、 が返されます。これを変更して「重複する」チャンクの配列を作成する方法に興味があります(または、移動平均、「移動サブグループ」などの方法に精通している場合)。 chunkSize
[[1,2],[3,4],[5,6]]
上記と同じchunkSize
3 つの配列を指定すると、 が返され[[1,2,3],[2,3,4],[3,4,5],[4,5,6]]
ます。2の AchunkSize
が返され[[1,2],[2,3],[3,4],[4,5],[5,6]]
ます。
これにアプローチする方法について何か考えはありますか?