자바스크립트 클래스에서 사용하는 생성자 함수의 역할은 무엇인가요?
생성자 함수는 new
키워드로 호출되며, 다음과 같은 역할을 수행합니다:
-
인스턴스 변수 초기화: 클래스 내부에 선언된 인스턴스 변수를 초기화합니다. 이를 통해 인스턴스가 생성될 때 필요한 속성들을 설정할 수 있습니다.
-
인스턴스 메서드 초기화: 생성자 함수 내에서 클래스의 인스턴스 메서드를 정의합니다. 이를 통해 인스턴스 객체에 적용될 동작들을 설정할 수 있습니다.
-
부모 클래스 호출: 생성자 함수 내에서
super()
메서드를 사용하여 부모 클래스의 생성자를 호출할 수 있습니다. 이를 통해 상속된 클래스의 초기화 작업을 수행할 수 있습니다.
로직적으로, 생성자 함수는 클래스의 인스턴스가 생성될 때 자동으로 호출되는 것이 일반적입니다. 따라서 생성자 함수는 인스턴스 초기화를 위한 중요한 역할을 수행하며, 클래스의 속성 및 메서드를 설정하는데 중요한 역할을 합니다.
class Person {
constructor(name, age) {
this.name = name;
this.age = age;
}
introduce() {
console.log(`안녕하세요! 제 이름은 ${this.name}이고 나이는 ${this.age}살 입니다.`);
}
}
const person1 = new Person("John", 25);
person1.introduce(); // 출력: 안녕하세요! 제 이름은 John이고 나이는 25살 입니다.
위의 예시에서 Person
클래스의 생성자 함수는 name
과 age
라는 매개변수를 받아 인스턴스 변수를 초기화합니다. 또한 introduce()
메서드를 정의하여 해당 인스턴스의 정보를 출력하는 기능을 제공합니다. person1
은 Person
클래스의 인스턴스이며, 생성자 함수를 통해 인스턴스 변수를 초기화하고 introduce()
메서드를 호출하여 정보를 출력합니다.