Front-end/Javacript

flat() 사용법

Jace.K 2021. 7. 2. 01:40

정의

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]

위의 예시 중 arr2, arr3, arr4를 살펴보면

flat의 인자에 따라 얼마만큼의 깊이(depth)까지 하나로 합칠 것인지 정할 수 있다.

flat 함수는 배열의 구멍도 제거할 수 있다.

const arr5 = [1, 2, , 4, 5];
arr5.flat();
// [1, 2, 4, 5]

flat은 영어 뜻처럼 배열을 평평하게(?) 만드는 특징이 있다.