Backend/Node.js

[Javascript] 2차원 배열을 1차원 배열로 만들

장바금 2023. 2. 8. 00:16

Javascript에서 배열을 편면화하는 가장 효율적인 방법 spread operator (...)와 "reduce"를 이용하는 방법이다.

 

let nestedArray = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
let flattenedArray = nestedArray.reduce((acc, val) => [...acc, ...val], []);
console.log(flattenedArray); // [1, 2, 3, 4, 5, 6, 7, 8, 9]

 

예제에서 "reduce"는 배열의 누적기 "acc"와 현재 값 "val"를 가져오는 콜백 함수를 사용한다.

spread operator는 "val" 의 값을 처음에는 빈 배열 []인 누적기 "acc"에 연결하는 데 사용된다.

각 반복의 결과는 원래 배열(nestedArray)의 모든 요소가 단일 배열로 평평해질 때까지 다음 반복으로 누적기로 전달된다.