__proto_u u;内部JavaScript函数prototype属性

__proto_u u;内部JavaScript函数prototype属性,javascript,prototype,prototype-chain,Javascript,Prototype,Prototype Chain,想象一下简单的功能: function Person(); 我知道Person具有引用Function.prototype的\u proto\u属性 我还知道Person具有prototype属性。当我写作时: function Person(){},将自动创建一个新的原型对象: Person.prototype = { constructor: Person }; 但是在Person.prototype块中,我还有\uuuuu proto\uuuuu,那么这是什么\uuuuuuu prot

想象一下简单的功能:

function Person();
我知道
Person
具有引用Function.prototype的
\u proto\u
属性

我还知道
Person
具有
prototype
属性。当我写作时:
function Person(){}
,将自动创建一个新的原型对象:

Person.prototype = { constructor: Person };
但是在Person.prototype块中,我还有
\uuuuu proto\uuuuu
,那么这是什么
\uuuuuuu proto\uuuuu
,它是什么时候创建的,谁创建的


我可能知道它是
对象的原型,但它总是这样吗?

我不确定我是否理解你的意思,但是原型有它们的原型,可以有它们的原型,可以有它们的原型,等等,直到
为空。根据您的问题,您可能知道它被称为原型链,如果不是现在您知道:)您可以在上阅读更多关于它的详细信息。

所有构造函数都有原型链,可以深入到
函数。原型
,由这些构造函数创建的对象的所有实例都有原型链,可以深入到
对象。prototype
。此外,
\uuuuuuuuuuuuu
是一个伪属性(技术上是
对象。prototype
上的getter/setter),公开内部
[[prototype]]
对象。因此,即使是
{}
(一个“空”对象)也有一个
\uuuuu proto\uuuuu
属性。。。