JavaScript-klasse super
Definitie en gebruik
Het super
sleutelwoord wordt gebruikt om de constructor van zijn bovenliggende klasse aan te roepen om toegang te krijgen tot de eigenschappen en methoden van de bovenliggende klasse.
Tip: Om het "erfenis"-concept (ouder- en kindklassen) beter te begrijpen, lees onze JavaScript Classes Tutorial .
Voorbeeld
Maak een klasse met de naam "Model" die de methoden van de klasse "Car" erft, door het extends
sleutelwoord te gebruiken.
Door de super()
methode aan te roepen in de constructormethode, roepen we de constructormethode van de ouder aan en krijgen we toegang tot de eigenschappen en methoden van de ouder:
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();
Browserondersteuning
super
is een ECMAScript6 (ES6)-functie.
ES6 (JavaScript 2015) wordt ondersteund in alle moderne browsers:
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
super
wordt niet ondersteund in Internet Explorer 11 (of eerder).
Syntaxis
super(arguments); // calls the parent constructor (only inside
the constructor)
super.parentMethod(arguments); // calls a parent method
Technische details
JavaScript-versie: | ECMAScript 2015 (ES6) |
---|
Gerelateerde pagina's
JavaScript-zelfstudie: JavaScript-klassen
JavaScript-zelfstudie: JavaScript ES6 (EcmaScript 2015)
JavaScript-referentie: het uitgebreide trefwoord
JavaScript-referentie: de constructor()-methode