JavaScript/配列をn個ずつの配列に分割してそれをまとめた配列を作る
キーワード
- JavaScript
- 配列, Array
したいこと
たとえば
[1, 2, 3, 4, 5]
を3つずつの配列に分解するとして、
[[1, 2, 3],[4, 5]]
を作りたい。
どうやって
list.reduce((table, item) => {
const last = table[table.length - 1];
if (last.length === 3) {
table.push([item]);
return table;
}
last.push(item);
return table;
}, [[]]);
なお書き
特段トリッキーなことはしてない。
reduceには初期値を与えられるのがみそ。
参考
作成日 2018-06-05
