原型的原型链与实例的原型

JS 中的三类对象

其中,函数对象是核心,原型对象是桥梁,实例对象是砖块。

这么说的意思是,在 JS 中,函数起着核心作用,每创建一个函数的同时,也创建了一个与函数相对应的原型。

在某种意义上,所有的函数都是全局唯一函数 Function 的实例对象。

此外,JS 规定,除了一个之外的所有原型,在默认情况下的上一个原型都是 Object.prototype(这就是那个例外),这个例外的上一个原型是 null。

也就是说,在默认情况下,JS 中的原型关系是特别扁平的:函数与函数之间是并列关系。

在需要的时候,我们可以修改函数默认的原型属性:将本来并列的原型关系,修改为串联的原型关系,修改方法也非常简单,就是将其中一个原型设置为另一个原型的实例对象。

这就带出第三个关系:实例的原型就是相应构造函数的原型属性。


不知是该恭喜,还是该怎样,总之阅读到该文的,你是第 人。每一次刷新,都是不同的自己。