new 키워드
Coddy JavaScript 여정의 객체 지향 프로그래밍 섹션에 포함된 레슨 — 56개 중 5번째.
JavaScript의 new 키워드는 객체 생성을 위한 템플릿 역할을 하는 생성자 함수의 인스턴스를 만드는 데 사용됩니다.
Person을 위한 생성자 함수를 작성하세요:
function Person(name, age) {
this.name = name;
this.age = age;
this.greet = function() {
return "Hello, my name is " + this.name;
};
}new 키워드를 사용하여 인스턴스를 생성합니다:
const john = new Person("John", 30);위 코드를 실행한 후, john은(는) 속성과 메서드를 가진 객체입니다:
john.name은(는) "John"입니다john.age는 30입니다john.greet()은(는) "Hello, my name is John"을(를) 반환합니다
new 키워드가 없으면, this는 새로운 인스턴스가 아니라 전역 객체(또는 엄격 모드에서는 undefined)를 가리키게 됩니다.
챌린지
Car 객체 생성 및 설명 출력하기
자동차 객체를 생성하는 생성자 함수가 주어집니다. 여러분의 작업은 다음과 같습니다:
new키워드를 사용하여 새로운 자동차 객체를 생성하고, 이름으로 "Honda"를, 연도로 2018을 전달합니다.- 자동차 객체에서
getDescription메서드를 호출합니다. - 결과를 콘솔에 출력합니다.
치트 시트
new 키워드는 객체의 템플릿 역할을 하는 생성자 함수의 인스턴스를 생성합니다.
생성자 함수 정의하기:
function Person(name, age) {
this.name = name;
this.age = age;
this.greet = function() {
return "Hello, my name is " + this.name;
};
}new를 사용하여 인스턴스 생성하기:
const john = new Person("John", 30);속성과 메서드에 접근하기:
john.name // "John"
john.age // 30
john.greet() // "Hello, my name is John"new가 없으면, this는 새 인스턴스 대신 전역 객체(또는 엄격 모드에서는 undefined)를 가리킵니다.
직접 해보기
function Car(name, year) {
this.name = name;
this.year = year;
this.getDescription = function() {
return "This is a " + this.name + " from " + this.year;
};
}
// TODO: new 키워드를 사용하여 새로운 car 객체를 생성하고, 이름으로 "Honda"를, 연도로 2018을 전달하세요.
// TODO: car 객체의 getDescription 메서드를 호출하고 그 결과를 콘솔에 출력하세요.
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.