原型,原型链

原型: 每一个构造函数,都会带有一个 prototype 属性。该属性指向一个对象,该对象称之为 原型对象。其所有的属性和方法都能被构造函数的实例对象共享访问,因为实例都包含着一个指向原型对象的内部指针 __proto__。可以通过内部指针 __proto__ 访问到原型对象,

原型对象 上默认有一个 constructor 属性,指向其相关联的构造函数。

 

原型链: 当访问一个对象的某个属性时,会先在这个对象本身属性上查找,如果没有找到,则会去它的__proto__上查找,即它的构造函数的prototype,如果还没有找到就会再在构造函数的prototype的__proto__中查找(即上一层构造函数的prototype),这样一层一层向上查找直到Object的prototype结束,这样就会形成一个链式结构,我们称为原型链。我们可以说:它们是继承关系

 

1.prototype是一个对象属性,其属性值为对象,成为原型对象,原型作用是共享方法。

2.每个对象都有一个属性__proto__指向构造函数的prototype原型对象,__proto__对象原型等价于原型对象prototype,__proto__为对象的查找机制提供了一个方向,或者说是一条路线。

3.原型链:当访问对象的某个属性时,会先在这个对象本身属性上查找,如果没有找到则回去它的__proto__上查找,即它的构造函数上prototype,如果还没有找到,就会再在构造函数的prototype的__proto__中查找,这样一层一层向上查找就会形成一个俩是结构,成为原型链

4.constructor:对象原型(__proto__)和原型对象(prototype)里都有一个属性,constructor属性,它主要用于记录该对象引用了哪个构造函数,他可以让原型对象从新指回原来的构造函数

posted @ 2023-02-10 10:41  芬-mi  阅读(13)  评论(0编辑  收藏  举报