[javascript] 객체 생성자 (constructor) 함수의 활용
자바스크립트에서 객체 생성자(constructor) 함수는 새로운 객체를 생성할 때 사용되며, 일반적으로 클래스와 유사한 역할을 합니다. 객체 생성자 함수를 사용하면 동일한 속성과 메서드를 가진 여러 객체를 간편하게 생성할 수 있습니다. 이 포스트에서는 객체 생성자 함수를 활용하는 방법에 대해 알아보겠습니다.
객체 생성자 함수 정의
객체 생성자 함수는 function
키워드와 함께 정의됩니다. 일반적으로 첫 글자가 대문자로 시작하여 다른 함수와 구별하도록 합니다. 예를 들면:
function Person(name, age) {
this.name = name;
this.age = age;
this.greet = function() {
return `Hello, my name is ${this.name} and I am ${this.age} years old.`;
};
}
위의 예제에서 Person
함수는 name
과 age
속성을 가지는 객체를 생성합니다. greet
메서드는 해당 객체가 다른 객체들과 상호작용할 때 사용됩니다.
생성자 함수를 통한 객체 생성
객체 생성자 함수를 사용하여 객체를 생성할 때에는 new
키워드를 사용합니다. 예를 들면:
let person1 = new Person("John", 30);
let person2 = new Person("Jane", 25);
위의 예제에서 person1
과 person2
는 각각 Person
생성자 함수를 사용하여 생성된 객체입니다.
상속을 통한 프로토타입 공유
객체 생성자 함수를 사용하면 프로토타입 체인(prototype chain)을 활용하여 메서드를 공유할 수 있습니다. 예를 들면:
Person.prototype.introduce = function() {
return `My name is ${this.name} and I am ${this.age} years old.`;
};
위의 예제에서 introduce
메서드는 Person
생성자 함수로 생성된 모든 객체에서 사용할 수 있습니다.
결론
객체 생성자 함수의 활용을 통해 유사한 속성과 메서드를 가진 객체를 쉽게 생성하고, 프로토타입을 공유하여 메모리를 효율적으로 활용할 수 있습니다.
참고 자료:
이상으로 객체 생성자 함수의 활용에 대한 내용을 살펴보았습니다. 아직 더 필요한 정보가 있다면, 추가적인 자료를 참고하시기 바랍니다.