La classe JavaScript s'étend
Exemple
Créez une classe nommée "Model" qui héritera des méthodes de la classe "Car":
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();
Définition et utilisation
Le extends
mot-clé est utilisé pour créer une classe enfant d'une autre classe (parent).
La classe enfant hérite de toutes les méthodes d'une autre classe.
L'héritage est utile pour la réutilisation du code : réutilisez les propriétés et les méthodes d'une classe existante lorsque vous créez une nouvelle classe.
Remarque : à partir de l'exemple ci-dessus ; La super()
méthode fait référence à la classe parent. En appelant la super()
méthode dans la méthode constructeur, nous appelons la méthode constructeur du parent et obtenons l'accès aux propriétés et aux méthodes du parent.
Prise en charge du navigateur
extends
est une fonctionnalité ECMAScript6 (ES6).
ES6 (JavaScript 2015) est pris en charge dans tous les navigateurs modernes :
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
extends
n'est pas pris en charge dans Internet Explorer 11 (ou version antérieure).
Syntaxe
class childClass extends parentClass
Détails techniques
Version JavaScript : | ECMAScript 2015 (ES6) |
---|
Pages connexes
Tutoriel JavaScript : Classes JavaScript
Tutoriel JavaScript : JavaScript ES6 (EcmaScript 2015)
Référence JavaScript : le super mot-clé
Référence JavaScript : La méthode constructeur()