[javascript] 정적 프로퍼티와 동적 프로퍼티의 용도와 활용법

자바스크립트에서 프로퍼티(property)는 객체(object) 내에서 값을 나타내는 특성을 가리킵니다. 프로퍼티는 정적 프로퍼티(static property)와 동적 프로퍼티(dynamic property)로 나눌 수 있습니다. 각각의 용도와 활용법을 살펴보겠습니다.

정적 프로퍼티

정적 프로퍼티는 클래스(class) 자체에 바인딩되는 프로퍼티로, 클래스의 모든 인스턴스가 동일한 값을 가지게 됩니다. 이러한 특성으로 인해 클래스 레벨에서 공유되는 데이터를 표현하는 데 유용합니다.

class Circle {
  static PI = 3.14;
}

console.log(Circle.PI); // 3.14

위의 예제에서 PICircle 클래스의 정적 프로퍼티로, 모든 Circle 인스턴스가 동일한 값인 3.14를 갖습니다.

동적 프로퍼티

동적 프로퍼티는 객체의 인스턴스에 동적으로 추가되는 프로퍼티로, 런타임에 값을 할당하고 추가할 수 있습니다. 이는 객체의 동적인 확장을 가능케 합니다.

const person = {
  name: 'Alice'
};

person.age = 30;
console.log(person.age); // 30

위의 예제에서 ageperson 객체의 동적 프로퍼티로, 런타임에 추가되었고 값이 할당되었습니다.

결론

정적 프로퍼티와 동적 프로퍼티는 각각 클래스와 객체의 특성을 나타내며, 공유 데이터와 동적 확장 등의 다양한 용도에 활용됩니다. 올바른 상황에서 적절히 사용하여 객체 지향 프로그래밍을 더욱 효율적으로 구현할 수 있습니다.

이상으로 정적 프로퍼티와 동적 프로퍼티의 용도와 활용법에 대해 알아보았습니다.