자바스크립트 클래스에서 사용하는 생성자 함수의 역할은 무엇인가요?

생성자 함수는 new 키워드로 호출되며, 다음과 같은 역할을 수행합니다:

  1. 인스턴스 변수 초기화: 클래스 내부에 선언된 인스턴스 변수를 초기화합니다. 이를 통해 인스턴스가 생성될 때 필요한 속성들을 설정할 수 있습니다.

  2. 인스턴스 메서드 초기화: 생성자 함수 내에서 클래스의 인스턴스 메서드를 정의합니다. 이를 통해 인스턴스 객체에 적용될 동작들을 설정할 수 있습니다.

  3. 부모 클래스 호출: 생성자 함수 내에서 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 클래스의 생성자 함수는 nameage라는 매개변수를 받아 인스턴스 변수를 초기화합니다. 또한 introduce() 메서드를 정의하여 해당 인스턴스의 정보를 출력하는 기능을 제공합니다. person1Person 클래스의 인스턴스이며, 생성자 함수를 통해 인스턴스 변수를 초기화하고 introduce() 메서드를 호출하여 정보를 출력합니다.