JavaScript Class super 关键词
实例
创建一个名为 "Model" 的类,该类将通过使用 extends
关键字继承 "Car" 类的方法。
通过在构造方法中调用 super()
方法,我们将调用父类的构造方法,并可以访问父类的属性和方法:
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();
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();
定义和用法
super
关键字引用父类。
它用于调用父类的构造函数并访问父类的属性和方法。
提示: 要更好地理解"继承"的概念(父类和子类),请阅读我们的 JavaScript 类教程。
浏览器支持
关键词 | |||||
---|---|---|---|---|---|
super | 42.0 | 13.0 | 45.0 | 9.0 | 36.0 |
语法
super(arguments); // 调用父构造函数(仅在构造函数内部)
super.parentMethod(arguments); // 调用父方法
super.parentMethod(arguments); // 调用父方法
技术细节
JavaScript 版本: | ECMAScript 2015 (ES6) |
---|
相关页面
JavaScript 教程: JavaScript 类
JavaScript 教程: JavaScript ES6 (EcmaScript 2015)
JavaScript 参考手册: extends 关键字
JavaScript 参考手册: constructor() 方法