JavaScript 클래스 확장
예시
"Car" 클래스에서 메서드를 상속할 "Model"이라는 클래스를 만듭니다.
class Car {
constructor(brand) {
this.carname =
brand;
}
present() {
return 'I have a ' + this.carname;
}
}
class Model extends Car {
constructor(brand, mod) {
super(brand);
this.model = mod;
}
show() {
return this.present() + ', it is a ' + this.model;
}
}
mycar = new Model("Ford", "Mustang");
document.getElementById("demo").innerHTML
= mycar.show();
정의 및 사용
extends
키워드는 다른 클래스(부모)의 자식 클래스를 만드는 데 사용됩니다 .
자식 클래스는 다른 클래스의 모든 메서드를 상속합니다.
상속은 코드 재사용성에 유용합니다. 즉, 새 클래스를 만들 때 기존 클래스의 속성과 메서드를 재사용합니다.
참고: 위의 예에서; 메서드 는 super()
부모 클래스를 참조합니다. 생성자 메서드에서 메서드를 호출 super()
하여 부모의 생성자 메서드를 호출하고 부모의 속성과 메서드에 액세스합니다.
브라우저 지원
extends
ECMAScript6(ES6) 기능입니다.
ES6(JavaScript 2015)은 모든 최신 브라우저에서 지원됩니다.
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
extends
Internet Explorer 11(또는 이전)에서는 지원되지 않습니다.
통사론
class childClass extends parentClass
기술적 세부 사항
자바스크립트 버전: | ECMAScript 2015(ES6) |
---|
관련 페이지
JavaScript 튜토리얼: JavaScript 클래스
JavaScript 튜토리얼: JavaScript ES6(EcmaScript 2015)
JavaScript 참조: 슈퍼 키워드
JavaScript 참조: 생성자() 메서드