자바스크립트 배열 병합(Merging)

배열은 자바스크립트에서 매우 유용하게 사용되는 데이터 구조입니다. 때때로 두 개 이상의 배열을 하나의 배열로 병합해야 할 수도 있습니다. 이번 블로그 포스트에서는 자바스크립트에서 배열을 병합하는 다양한 방법과 그 예제를 살펴보겠습니다.

1. concat() 함수를 이용한 배열 병합

concat() 함수는 배열에 포함된 원소들을 다른 배열과 결합하여 새로운 배열을 생성합니다. 이 함수는 원본 배열을 변경하지 않고, 새로운 배열을 반환합니다.

const array1 = [1, 2, 3];
const array2 = [4, 5, 6];
const mergedArray = array1.concat(array2);
console.log(mergedArray);
// Output: [1, 2, 3, 4, 5, 6]

위의 예제에서는 concat() 함수를 사용하여 array1array2를 병합한 mergedArray를 생성합니다.

2. Spread 연산자를 이용한 배열 병합

ES6부터 추가된 Spread 연산자를 사용하여 두 배열을 간단하게 병합할 수도 있습니다. Spread 연산자는 배열 뿐만 아니라 객체 등 다른 자료구조에도 사용할 수 있습니다.

const array1 = [1, 2, 3];
const array2 = [4, 5, 6];
const mergedArray = [...array1, ...array2];
console.log(mergedArray);
// Output: [1, 2, 3, 4, 5, 6]

위의 코드에서는 Spread 연산자 ...를 사용하여 array1array2를 병합한 mergedArray를 생성합니다.

3. push() 메소드를 이용한 배열 병합

push() 메소드는 배열의 끝에 하나 이상의 원소를 추가하는 메소드이지만, 반환값으로 새로운 배열의 길이를 반환하기 때문에 이를 활용하여 배열을 병합할 수 있습니다.

const array1 = [1, 2, 3];
const array2 = [4, 5, 6];
array1.push(...array2);
console.log(array1);
// Output: [1, 2, 3, 4, 5, 6]

위의 예제에서는 push() 메소드를 사용하여 array2의 원소들을 array1에 병합합니다.

4. reduce() 함수를 이용한 배열 병합

reduce() 함수는 배열의 모든 원소를 순회하여 하나의 값으로 축약하는 기능을 제공합니다. 이를 활용하여 배열을 병합할 수도 있습니다.

const array1 = [1, 2, 3];
const array2 = [4, 5, 6];
const mergedArray = array2.reduce((acc, curr) => {
  return acc.concat(curr);
}, array1);
console.log(mergedArray);
// Output: [1, 2, 3, 4, 5, 6]

위의 예제에서는 reduce() 함수를 사용하여 array2의 원소들을 array1에 병합하여 mergedArray를 생성합니다.

결론

자바스크립트에서 배열을 병합하는 다양한 방법을 살펴보았습니다. concat() 함수를 이용하는 방법과 Spread 연산자, push() 메소드, 그리고 reduce() 함수를 활용하는 방법 등 각각의 방법은 상황에 따라 유용하게 사용될 수 있습니다. 프로젝트나 코드에서 필요한 상황에 맞게 병합 방법을 선택하여 더욱 효율적인 코드를 작성해보세요.