Chaque objet de JavaScript aura un prototype. Essayez-le:
La copie de code est la suivante:
var richard = nouveau objet ();
alert (typeof (Richard.prototype));
Le résultat est déprimant, et ce qui apparaît avec le navigateur n'est pas défini ...
Que se passe-t-il?
Jetons un coup d'œil à un autre exemple:
La copie de code est la suivante:
fonction Richard () {}
alert (typeof (Richard.prototype));
L'exemple ci-dessus semble montrer que seuls les objets de fonction ont des prototypes, tandis que les objets généraux n'ont pas de prototypes. Quelle est la vérité?
Mettons en œuvre une autre phrase et comprenons:
La copie de code est la suivante:
var richard = nouveau objet ();
alerte (Richard .__ Proto__);
Est-ce que tu comprends?
En fait, nous avons tous un malentendu, à savoir que la chaîne prototype des objets JavaScript est une propriété nommée prototype et peut être accessible. En fait, le prototype de JavaScript et l'attribut nommé prototype n'ont aucune relation au début et sont deux choses différentes.
Pour les objets généraux, nous ne pouvons accéder qu'au prototype hérité de l'objet objet via des attributs tels que __proto__;
Pour un objet fonction, lorsqu'il est établi, le prototype de l'objet fonction a été affecté à la propriété Prototype.