Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript에서 한 배열의 요소를 다른 배열의 요소로 교체하는 방법

JavaScript에서 한 배열의 요소를 다른 배열의 요소로 교체하려면 splice() 메서드를 사용하면 됩니다. splice()는 배열의 특정 위치에서 요소를 제거하고, 그 자리에 새로운 요소를 삽입할 수 있는 강력한 메서드입니다.

splice()로 배열 요소 교체하기

아래 예제에서는 values 배열의 앞부분 요소들을 marks 배열의 요소들로 한 번에 교체합니다.

예제 코드

var values = ['John', 'David', 'Bob', 'Mike', 'Sam', 'Carol', 'Adam'];
var marks = [55, 78, 90];
Array.prototype.splice.apply(values, [0, marks.length].concat(marks));
console.log(values);

위 코드의 핵심은 Array.prototype.splice.apply()를 활용한 부분입니다. apply()를 사용하면 splice()에 전달할 인수를 배열 형태로 만들어 넘길 수 있으며, 여기서는 시작 인덱스(0), 제거할 개수(marks.length), 그리고 삽입할 요소들(marks의 모든 값)을 하나의 배열로 합쳐 전달합니다.

프로그램 실행 방법

위 프로그램을 실행하려면 Node.js 환경에서 다음 명령어를 입력합니다.

node fileName.js

여기서는 파일 이름이 demo303.js라고 가정합니다.

실행 결과

프로그램을 실행하면 아래와 같은 출력 결과를 확인할 수 있습니다.

PS C:\Users\Amit\javascript-code> node demo303.js
[ 55, 78, 90, 'Mike', 'Sam', 'Carol', 'Adam' ]

출력 결과를 보면 values 배열의 첫 세 요소('John', 'David', 'Bob')가 marks 배열의 요소(55, 78, 90)로 교체되고, 나머지 요소들은 그대로 유지된 것을 알 수 있습니다.

참고: 더 간단한 대안 방법

ES6 이상 환경이라면 스프레드 연산자(...)를 사용해 더 직관적으로 작성할 수도 있습니다.

values.splice(0, marks.length, ...marks);

이 방식은 apply() 없이도 동일한 결과를 얻을 수 있어 가독성이 뛰어나므로, 최신 JavaScript 환경에서는 이 방법을 권장합니다.