[javascript] 프로퍼티 이름이 중복될 때 동적으로 프로퍼티를 추가하는 방법

자바스크립트에서 객체의 프로퍼티 이름이 중복될 때, 해당 프로퍼티를 동적으로 추가하고 싶을 수 있습니다. 여러 가지 방법이 있지만 가장 간단한 방법은 대괄호 표기법을 사용하는 것입니다.

대괄호 표기법 사용하기

예를 들어, 다음과 같이 객체가 있을 때:

let person = {
  name: 'Alice',
  age: 30
};

이름이 'name'인 프로퍼티를 추가하려면 다음과 같이 할 수 있습니다:

let newPropertyName = 'name';
person[newPropertyName] = 'Bob';

위 예제에서 newPropertyName 변수에 동적으로 프로퍼티 이름을 지정한 후, 대괄호 표기법을 사용하여 해당 프로퍼티를 추가하였습니다.

Object.assign 메소드 사용하기

또 다른 방법은 Object.assign 메소드를 사용하는 것입니다. Object.assign 메소드를 사용하면 기존 객체에 새로운 프로퍼티를 추가할 수 있습니다.

let person = {
  name: 'Alice',
  age: 30
};

let newPropertyName = 'name';
let newObj = {};
newObj[newPropertyName] = 'Bob';

Object.assign(person, newObj);

위 예제에서 Object.assign 메소드를 사용하여 person 객체에 newObj 객체의 프로퍼티를 추가하였습니다.

대괄호 표기법과 Object.assign 메소드는 중복된 프로퍼티를 동적으로 추가하는 두 가지 일반적인 방법입니다. 어떤 방법을 선택하든, 프로퍼티 이름을 중복되지 않도록 주의해야 합니다.

참고 자료