Maison > interface Web > js tutoriel > le corps du texte

La relation entre l'héritage de prototype de classe et de prototype js dans ES6

小云云
Libérer: 2018-03-07 15:27:56
original
1359 Les gens l'ont consulté

ES6 introduit la classe de mots-clés afin de réduire davantage l'écriture de code et de simplifier la logique du code. Mais l'implémentation de la classe est également basée sur un prototype, avec une couche de sucre syntaxique. La plupart de ses fonctions peuvent être réalisées par ES5. La nouvelle méthode d'écriture de classe ne fait que rendre la méthode d'écriture du prototype d'objet plus claire et plus proche de la programmation orientée objet. Juste de la grammaire.

class Person {
constructor(name) {
this.name=name||"Default";
}
toString(){
return 'Name:'+this.name;
}
}
var p1=new Person();
console.log(p1.name);
class Boy extends Person{
constructor(name){
super(name);
this.gende='Boy';
}
toString(){
return super.toString()+" - Gende:"+this.gende;
}
}
var b1=new Boy('hello');
console.log(b1);
console.log(b1.toString());
Copier après la connexion

L'héritage ES5, c'est-à-dire le prototype
consiste essentiellement à créer d'abord l'objet instance de la sous-classe this
puis à ajouter les méthodes de la classe parent à this ( Parent.apply(this))
L'héritage ES6, c'est-à-dire que la classe
crée essentiellement l'objet instance this de la classe parent (super doit être appelé en premier)
puis utilise le constructeur de la sous-classe pour modifier cela
Leurs mécanismes d'implémentation sont différents
Comme ES6 et ES5, toutes les instances d'une classe partagent un objet prototype

Pour es6, il faut quand même lire la documentation.

Recommandations associées :

Explication détaillée du mot-clé class dans ES6

Exemples d'utilisation des classes get et set class dans ES6 javascript

Explication détaillée de l'utilisation de l'attribut Prototype de js

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!