Flatten
- 자바스크립트에서
array
구조 안에 또 다른 array
를 인덱스로 가질 때, array
를 평평하게 만드는 작업을 flatten
이라고 한다.
Array.prototype.flat()
flat()
메서드는 모든 하위 배열 요소를 지정한 깊이까지 재귀적으로 이어붙인 새로운 배열을 생성한다.
const newArr = arr.flat([depth])
- 반환 값 : 하위 배열을 이어붙인 새로운 배열.
ex) 중첩 배열 평탄화
const arr1 = [1, 2, [3, 4]];
arr1.flat();
const arr2 = [1, 2, [3, 4, [5, 6]]];
arr2.flat();
const arr3 = [1, 2, [3, 4, [5, 6]]];
arr3.flat(2);
const arr4 = [1, 2, [3, 4, [5, 6, [7, 8, [9, 10]]]]];
arr4.flat(Infinity);
ex) 배열 구멍 제거
const arr5 = [1, 2, , 4, 5];
arr5.flat();
Unflatten
- unflatten 은 flatten 과 반대로 배열을 중첩시켜주는 기능이다.
- npm 에서 설치해서 사용하거나, flat() 함수의 기능을 이용할 수도 있다.