자바스크립트 생성자와 프로토타입의 관계 이해를 위한 예시 코드 분석

자바스크립트에서 생성자와 프로토타입은 객체 지향 프로그래밍의 기본 개념입니다. 생성자는 객체를 생성할 때 사용되는 함수이며, 프로토타입은 생성자로부터 생성된 객체들이 공유하는 메서드와 속성을 담고 있는 객체입니다.

아래 예시 코드를 통해 생성자와 프로토타입의 관계를 이해해보겠습니다.

// 생성자 함수
function Person(name, age) {
  this.name = name;
  this.age = age;
}

// 프로토타입 메서드
Person.prototype.greet = function() {
  console.log("안녕하세요!");
};

// 객체 생성
const person1 = new Person("John", 25);
const person2 = new Person("Jane", 30);

// 객체 메서드 호출
person1.greet(); // 출력: 안녕하세요!
person2.greet(); // 출력: 안녕하세요!

위 코드에서 Person이라는 생성자 함수를 정의하고, 이로부터 person1person2라는 객체를 생성합니다. Person.prototypegreet라는 메서드를 추가하여 모든 Person 객체가 이 메서드를 사용할 수 있도록 합니다.

person1.greet()person2.greet()를 호출하면, 두 개의 객체 모두 “안녕하세요!”라는 메시지가 출력됩니다. 이는 person1person2Person.prototype을 공유하기 때문입니다.

생성자와 프로토타입의 관계를 이용하면, 같은 종류의 객체를 효율적으로 생성하고 메서드를 공유할 수 있습니다. 이러한 개념을 이해하면 자바스크립트의 객체 지향 프로그래밍에 대한 이해도를 높일 수 있습니다.

#javascript #생성자 #프로토타입 #객체