Je suis confondu avec Object.prototype et Anything.prototype de javascript.javascript Object.prototype VS Anything.prototype
Dans la console chrome, j'ai le code ci-dessous:
Mes questions:
- Le prototype par défaut pour toute fonction est une instance de l'objet. Est ce bien?
- Si 1 est vrai. Ainsi, Anything.prototype et Object.prototype sont une instance de Object. Object.prototype est une instance avec son
__proto__
=== null. Par conséquent, Object.prototype est une instance spéciale en haut de la chaîne du prototype. Puis-je comprendre comme ça?
Plus précisément, 'Object.prototype' est [... un prototype d'objet exotique immuable ...] (http://www.ecma-international.org/ecma-262/7.0/index.html#sec-properties -of-the-object-prototype-object) dont l'emplacement interne \ [\ [Prototype \] \] est 'null'. Donc en effet, pas une instance de 'Object', bien que ce soit un objet. –
@ T.J.Crowder Être exotique ne signifie pas qu'il ne peut s'agir d'un 'instanceof Object', mais oui, c'est vraiment très spécial. – Bergi
Je n'ai pas dit ça. Mais avec son slot [[Prototype]] étant nul, ce n'est pas une instanceof Object. –