JavaScript 类 super
描述
The super
关键字用于调用其父类的构造函数,以访问父类的属性和方法。
提示:要更好地理解“继承”的概念(父类和子类),请阅读我们的 JavaScript 类教程.
示例
创建一个名为“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();
浏览器支持
super
是 ECMAScript6 (ES6) 的一个特性。
ES6 (JavaScript 2015) 自 2017 年 6 月起在所有现代浏览器中得到支持
Chrome 51 | Edge 15 | Firefox 54 | Safari 10 | Opera 38 |
2016 年 5 月 | 2017 年 4 月 | 2017 年 6 月 | 2016 年 9 月 | 2016 年 6 月 |
super
不支持 Internet Explorer。
语法
super(arguments); // 调用父类构造函数(仅在构造函数内部)
super.parentMethod(arguments); // 调用父类方法
技术细节
JavaScript 版本 | ECMAScript 2015 (ES6) |
---|
相关页面
JavaScript 教程:JavaScript 类
JavaScript 教程:JavaScript ES6 (EcmaScript 2015)
JavaScript 参考:extends 关键字
JavaScript 参考:constructor() 方法