1,什么是原型链?
原型链是 JavaScript 中用于实现继承和属性查找的一种机制。它是基于对象的,每个对象都有一个隐藏的内部链接(称为原型),它可以引用另一个对象,而后者也具有自己的原型。这样就形成了一个链式结构,即原型链。每个对象都有一个原型(prototype),可以通过 __proto__
属性来访问它。如果在一个对象上访问一个属性或方法,JavaScript 引擎会首先查找该对象自身是否有该属性或方法,如果没有则会继续沿着该对象的原型链向上查找,直到找到或者到达原型链的顶端(Object.prototype)为止
2,原型继承
JavaScript 的原型链机制使得对象可以继承其他对象的属性与方法,这种基于原型链的继承方式被称为原型继承。当我们访问一个对象的属性或方法时,JavaScript 引擎会按照原型链的顺序在相关的对象上进行查找,直到找到或者到达原型链的顶端。这种机制使得我们能够非常灵活地扩展和复用对象的功能
3.注意:
如果某个对象上存在与原型链上相同名称的属性或方法,那么会优先使用对象自身的属性或方法,而不是原型链上的