flat()
메서드는 모든 하위 배열 요소를 지정한 깊이까지 재귀적으로 이어붙인 새로운 배열을 생성한다.
const newArr = arr.flat([depth]);
하위 배열을 이어붙인 새로운 배열
const arr1=[1,2,[3,4]];
arr1.flat();
// [1,2,3,4]
const arr2=[1,2,[3,4,[5,6]]];
arr2.flat();
// [1,2,3,4,[5,6]]
const arr3=[1,2,[3,4,[5,6]]];
arr3.flat(2);
// [1,2,3,4,5,6]
const arr4=[1,2,[3,4,[5,6[7,8,[9,10]]]]];
arr4.flat(Infinity);
// [1,2,3,4,5,6,7,8,9,10]
const arr5=[1,2,,4,5];
arr5.flat();
//[1,2,4,5]
const arr = [1,2,[3,4]];
// To flat signle level array
arr.flat();
// is equivalent to
arr.reduce((arr, val)=> acc.concat(val), []);
// [1,2,3,4]
// or with decomposition syntax
const flattened = arr => [].concat(...arr);
인터넷 익스프로어에는 지원이 되지 않아서 reduce
, concat
과 같은 대안도 생각해놔야한다.