[javascript] 동적으로 생성된 프로퍼티를 포함한 객체 초기화 방법

자바스크립트에서 객체를 초기화할 때, 때때로 동적으로 프로퍼티를 추가해야 할 때가 있습니다. 이를 위해 몇 가지 방법을 사용할 수 있습니다. 이 글에서는 여러 가지 방법을 살펴보고, 동적으로 생성된 프로퍼티를 포함한 객체를 초기화하는 방법을 알아보겠습니다.

1. 객체 리터럴을 사용하여 동적으로 프로퍼티 추가

객체를 생성할 때 객체 리터럴을 사용하여 동적으로 프로퍼티를 추가할 수 있습니다. 예를 들어:

let dynamicProperty = 'dynamic';
let obj = {
  staticProperty: 'static',
};
obj[dynamicProperty] = 'dynamic value';

위 코드에서 obj 객체는 초기화될 때 staticProperty라는 정적 프로퍼티를 포함하고 있습니다. 이후 동적으로 dynamicProperty라는 프로퍼티를 추가하고 그 값을 설정했습니다.

2. Object.assign()을 활용

Object.assign() 메서드를 사용하여 객체를 병합하고 동적으로 프로퍼티를 추가할 수 있습니다.

let dynamicProperty = 'dynamic';
let obj = {
  staticProperty: 'static',
};
Object.assign(obj, { [dynamicProperty]: 'dynamic value' });

이 방법은 기존의 객체에 새로운 프로퍼티를 추가하는 데 사용됩니다.

3. ES6의 Spread 연산자 활용

ES6의 Spread 연산자를 사용하여 객체를 확장하고 동적으로 프로퍼티를 추가할 수도 있습니다.

let dynamicProperty = 'dynamic';
let obj = {
  staticProperty: 'static',
  ...{ [dynamicProperty]: 'dynamic value' },
};

...{ [dynamicProperty]: 'dynamic value' } 부분은 동적으로 생성된 프로퍼티를 추가한 새로운 객체를 확장하는 것을 보여줍니다.

결론

자바스크립트에서는 객체를 초기화하면서 동적으로 프로퍼티를 추가하는 여러 가지 방법이 있습니다. 객체 리터럴, Object.assign() 메서드, 그리고 ES6의 Spread 연산자를 사용하여 객체를 초기화하고 동적으로 프로퍼티를 추가할 수 있습니다.

참고문헌: