자바스크립트에서 생성자와 new
키워드는 객체 지향 프로그래밍에서 중요한 개념입니다. 생성자는 객체를 생성하기 위해 사용되며, new
키워드는 생성자 함수를 호출하여 객체를 생성하는 역할을 합니다.
생성자 함수
생성자 함수는 일반적으로 클래스로부터 객체를 생성하는 함수입니다. 생성자 함수의 이름은 관례적으로 대문자로 시작하여 구분합니다. 생성자 함수는 this
키워드를 사용하여 새로운 객체를 초기화하고 해당 객체의 속성과 메서드를 정의합니다.
아래는 Person
생성자 함수의 예시입니다.
function Person(name, age) {
this.name = name;
this.age = age;
this.greet = function() {
console.log("안녕하세요!");
};
}
이 생성자 함수는 name
과 age
라는 매개변수를 받아서 this.name
과 this.age
라는 속성을 초기화하고, greet
라는 메서드를 정의합니다. 이 생성자 함수를 통해 객체를 생성할 수 있습니다.
객체 생성하기
new
키워드를 사용하여 생성자 함수를 호출하면 새로운 객체가 생성됩니다. new
키워드로 생성된 객체는 생성자 함수의 this
에 바인딩되어 동적으로 초기화됩니다.
아래는 Person
생성자 함수를 사용하여 john
이라는 이름의 객체를 생성하는 예시입니다.
let john = new Person("John", 25);
john.greet(); // 출력: 안녕하세요!
console.log(john.name); // 출력: John
console.log(john.age); // 출력: 25
위의 예시에서 new Person("John", 25)
라는 코드는 Person
생성자 함수를 호출하고, name
매개변수에 “John”을, age
매개변수에 25를 전달하여 객체를 생성합니다. 이렇게 생성된 john
객체는 greet
메서드를 호출하고, name
과 age
속성을 출력할 수 있습니다.
요약
자바스크립트의 생성자 함수와 new
키워드는 객체 지향 프로그래밍에서 객체를 생성하기 위한 중요한 개념입니다. 생성자 함수는 객체를 초기화하고 속성과 메서드를 정의하는 역할을 합니다. new
키워드를 사용하여 생성자 함수를 호출하면 새로운 객체가 생성되고, 생성자 함수가 this
를 통해 객체를 초기화합니다. 이를 통해 객체를 생성하고 사용할 수 있습니다.
#JavaScript #생성자 #new