这个super
关键字用于调用其父类的构造函数来访问父类的属性和方法。
提示:要更好地理解 "inheritance" 概念(父类和子类),请阅读我们的JavaScript 类教程。
创建一个名为 "Model" 的类,该类将从 "Car" 类继承方法,方法是使用extends
关键字。
通过致电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):
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
super
Internet Explorer 11(或更早版本)不支持。
super(
arguments); // calls the parent constructor (only inside the constructor)
super.
parentMethod(
arguments); // calls a parent method
JavaScript 版本: | ECMAScript 2015 (ES6) |
---|
JavaScript 教程:JavaScript 类
JavaScript 教程:JavaScript ES6 (EcmaScript 2015)
JavaScript 参考:扩展关键字
JavaScript 参考:构造函数()方法
截取页面反馈部分,让我们更快修复内容!也可以直接跳过填写反馈内容!