자바스크립트 flat, 배열 안에 배열 평탄화하는 과정

자바스크립트 flat는 배열 안에 배열을 평탄화하는 표준 내장 객체입니다.

자바스크립트 flat 배열 안에 배열 평탄화하는 과정

목차


구문

arr.flat([depth])

depth: 배열 안에 배열이 얼마나 되는 지에 따라 깊이를 설정할 수 있습니다. 기본값은 1입니다. 만약, [1,2,[3,4],5] 이러한 형태의 배열이 있으면 배열 안에 배열은 1개이므로 flat()라고 작성하면 됩니다.


예제 1) 2개 이상의 배열 안에 배열이 있을 때

let arr = [1,2,[3,4,[5,6],7],8]
console.log(arr.flat(2)); // [1,2,3,4,5,6,7,8]

배열의 형태가 이러할 때 flat를 이용하여 [1,2,3,4,5,6,7,8] 이러한 형태로 변경할 수 있습니다. 먼저 배열의 깊이는 크게 2개이므로 flat(2)를 사용하면 쉽게 해결 할 수 있습니다.


예제 2) depth를 Infinity로 작성하기

let arr2 = [1,2,[3,4,[5,6,[7,8]]]]
console.log(arr3.flat(Infinity)); // [1,2,3,4,5,6,7,8]

예제 1처럼 숫자로 작어 평탄화할 수 있지만 무한의 의미를 가지고 있는 Infinity로 한번에 해결할 수 있습니다.


예제 3) 배열 구멍 제거

let arr3 = [1,2,,3,4];
console.log(arr3.flat()); // [1,2,3,4]

배열에서 empty에 대한 것을 flat()를 이용하여 없앨 수 있습니다.

위 코드에 대한 결과는 이곳에서 확인하실 수 있습니다.