unflatten은 중첩된 배열을 의미한다.
[1, [2, 3, [4, 5]]]
flatten은 중첩된 배열을 평탄화 하는 작업을 말한다.
[1, [2, 3, [4, 5]]].flat(2)
// 인수 2는 중첩 배열 평탄화를 위한 깊이 값이다.
const values = [1, [2, 3], 4, [5, 6]]; const flatten = values.reduce((acc, cur) => acc.concat(cut), []); console.log(flattn); // [1, 2, 3, 4, 5, 6]
중첩된 배열을 하나의 배열로 펼칠때 reduce 메서드보다 flat 매서드를 사용하는 것이더 직관적이다.
[1, [2, 3, 4, 5]].flat(); // -> [1, 2, 3, 4, 5]
참조 : 모던 자바스크립트 Deep Dive