Maison  >  Article  >  interface Web  >  Introduction à la relation entre constructeurs et chaînes de prototypes en JavaScript

Introduction à la relation entre constructeurs et chaînes de prototypes en JavaScript

不言
不言avant
2019-02-23 17:04:282235parcourir

Cet article vous apporte une introduction à la relation entre les constructeurs et les chaînes de prototypes en JavaScript. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

Il n'y a pas de concept de classe en Javascript. Son concept de classe est réalisé à travers un constructeur et une chaîne de prototypes.

1. Constructeur : L'objet d'initialisation lors de la création d'un objet apparaît toujours avec la nouvelle clé.

Le constructeur a les caractéristiques suivantes :
1. Ceci dans le constructeur pointe vers l'objet instance actuel.
2. Utilisez le mot-clé new pour instancier l'objet actuel.
3. Mettez en majuscule la première lettre du constructeur pour distinguer les fonctions ordinaires.
4. Les objets d'instance peuvent hériter des propriétés et des méthodes du constructeur. Toutefois, les propriétés ne peuvent pas être partagées entre les instances du même objet.

2. Prototype (prototype) : C'est un objet qui implémente l'héritage des attributs de l'objet. Les objets en javascript pointent vers des objets prototypes via proto, accessible via Object.__proto__

3 Constructeur et connexion avec le prototype :

   <script>
   function  Demo(){
            
     }
     var demo = new Demo()
     var  data= demo.prototype = function(){

     }
    
     console.log(demo.__proto__)
     console.log(data.constructor )
     console.log(data.prototype.__proto__)
     console.log(demo.constructor.prototype)
     console.log(demo.constructor)
    输出:
    {constructor: ƒ}constructor: ƒ Demo()__proto__: Object
    ƒ Function() { [native code] }
    {constructor: ƒ, __defineGetter__: ƒ, __defineSetter__: ƒ, hasOwnProperty: ƒ, __lookupGetter__: ƒ, …}
    {constructor: ƒ}
    ƒ Demo(){    }
</script>

De ce qui précède. les résultats de sortie peuvent être vus :

Le __proto__ du constructeur pointe vers l'objet prototype ;
Le constructeur du prototype pointe vers le constructeur Function ;
Le prototype.__proto__ du prototype est égal à Object. __proto__;
Exemple Le constructeur.prototype pointe vers le prototype ;
Le constructeur de l'instance pointe vers la fonction constructeur

Légende de la référence :
![1460000018155881][1]

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer