Maison  >  Article  >  interface Web  >  À propos des compétences prototype_javascript des objets Javascript

À propos des compétences prototype_javascript des objets Javascript

WBOY
WBOYoriginal
2016-05-16 16:49:021005parcourir

Chaque objet en Javascript possède un prototype. Essayez-le :

Copier le code Le code est le suivant :

var Richard = new Object( );
alert(typeof(Richard.prototype));

Le résultat est déprimant, le navigateur apparaît indéfini...

Que se passe-t-il ?

Regardez un autre exemple :
Copiez le code Le code est le suivant :

function Richard(){}
alert(typeof(Richard.prototype));

L'exemple ci-dessus semble montrer que seuls les objets fonction ont des prototypes, alors que les objets Object généraux n'en ont pas. avoir des prototypes. Quels sont les faits ?

Nous comprendrons si nous exécutons une autre phrase :
Copier le code Le code est le suivant :

var Richard = new Object();
alert(Richard.__proto__);

Comprenez-vous ?

En fait, nous avons tous un malentendu, c'est-à-dire que le prototype qui forme la chaîne de prototypes d'un objet Javascript est une propriété nommée prototype, et elle est accessible. En fait, le prototype de Javascript et la propriété nommée prototype n'ont rien à voir au départ. Ce sont deux choses différentes.

Pour les objets généraux, nous ne pouvons accéder au prototype hérité de l'objet Objet que via des attributs tels que __proto__

Pour les objets fonction, lors de leur création, ils ont été Le prototype de la Fonction ; L'objet est affecté à l'attribut prototype.
Déclaration:
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