JavaScript에서는 하나의 배열에 여러 객체를 추가하는 방법이 매우 다양합니다. 상황과 목적에 따라 적합한 방법을 선택하면 코드의 가독성과 효율성을 모두 높일 수 있습니다. 이번 글에서는 가장 많이 사용되는 대표적인 방법들을 예제와 함께 살펴보겠습니다.
1. push() – 배열 끝에 요소 추가
배열의 마지막에 객체를 추가하려면 push() 메서드를 사용합니다. 호출할 때마다 요소가 순서대로 배열 뒤쪽에 붙습니다.
예제
let arr = [];
arr.push(1);
arr.push(2);
console.log(arr);
출력 결과
[1, 2]
참고로 push()는 한 번의 호출로 여러 값을 동시에 전달할 수도 있습니다.
arr.push(3, 4, 5); // [1, 2, 3, 4, 5]
2. unshift() – 배열 앞에 요소 추가
반대로 배열의 맨 앞에 객체를 추가하려면 unshift() 메서드를 사용합니다.
예제
let arr = [];
arr.unshift(1);
arr.unshift(2);
console.log(arr);
출력 결과
[2, 1]
나중에 추가된 값이 앞쪽에 위치하게 되므로, 위 예제에서는 2가 첫 번째 요소가 된 점에 유의하세요.
3. 스프레드 연산자(Spread Operator) 활용
ES6에서 도입된 스프레드 연산자(...)를 사용하면 기존 배열의 요소를 그대로 펼쳐서 새 배열에 복사할 수 있습니다. 배열 중간에 다른 배열을 삽입하고 싶을 때 특히 유용합니다.
예제
let arr1 = [1, 2, 3];
let arr2 = ['hello', ...arr1, 'world'];
console.log(arr2);
출력 결과
['hello', 1, 2, 3, 'world']
4. 보너스: concat()으로 배열 합치기
두 개 이상의 배열을 하나로 합치고 싶다면 concat() 메서드도 좋은 선택입니다. 원본 배열은 변경되지 않고 새로운 배열이 반환됩니다.
예제
let arr1 = [1, 2];
let arr2 = [3, 4];
let merged = arr1.concat(arr2);
console.log(merged); // [1, 2, 3, 4]
마무리
정리하면 다음과 같습니다.
- 끝에 추가 →
push() - 앞에 추가 →
unshift() - 기존 배열을 펼쳐서 삽입 → 스프레드 연산자(
...) - 배열 자체를 합침 →
concat()
각 방법의 특징을 잘 이해하고 상황에 맞게 활용하면, 배열 데이터를 훨씬 더 유연하고 깔끔하게 다룰 수 있습니다.