阿酥博客阿酥博客

逐梦
二次元

JS中原型和原型链

1.所有的函数类型天生自带一个属性:prototype(原型),这个属性的值是一个对象,浏览器会默认给它开辟一个堆内存。

2.在浏览器给prototype开辟的堆内存当中,有一个天生自带的属性:constructor,这个属性存储的值是当前函数本身

3.每一个对象都有一个__proto__的属性,这个属性指向当前实例所属类的prototype(如果不能确定它是谁的实例,那都是object的实例)

原型链:它是一种基于__proto__向上查找的机制。当我们操作某个属性或者方法的时候,首先找自己空间中的私有属性or方法。如果找到了,就结束查找,使用私有类的。如果没找到,就基于__proto__找所属类的prototype找公有的属性or方法,一直找到Object.prototype的原型为止,如果再没有,则这个方法或者属性不存在。

本原创文章未经允许不得转载 | 当前页面:阿酥博客 » JS中原型和原型链

评论