Menu

#author("2018-06-05T12:52:40+00:00","default:haruki","haruki")
* キーワード [#jcccadc5]
- JavaScript
- 配列, Array

* したいこと [#q99dd098]

たとえば

 [1, 2, 3, 4, 5]

を3つずつの配列に分解するとして、

 [[1, 2, 3],[4, 5]]

を作りたい。

* どうやって [#k5d84c8b]

 list.reduce((table, item) => {
 	const last = table[table.length - 1];
 	if (last.length === 3) {
 		table.push([item]);
 		return table;
 	}
 	last.push(item);
 	return table;
 }, [[]]);

* なお書き [#pf1ede71]

特段トリッキーなことはしてない。

reduceには初期値を与えられるのがみそ。

* 参考 [#i01c4019]
- [[配列を n 個ずつの配列に分割して、それをまとめた配列を作る | Unformed Building>http://unformedbuilding.com/articles/javascript-array-practice-1/]]

スポンサーリンク