rubyでいうEnumerable#each_slice
のようなことをunderscore.jsでやりたかったんですが、ドンピシャ一発取りできる関数って用意されてないみたい・・。というわけで、メモっておきます。
以下の例は [1, 2, 3, 4, 5, 6, 7] を [[1, 2, 3],[4, 5, 6],[7]] に変換する例です。
例
var arr = [1, 2, 3, 4, 5, 6, 7];
var slice = 3;
return _.values(_.groupBy(arr, function(v, i) { return Math.floor(i / slice) }));