原型链笔记

9 阅读1分钟

原型链是 JavaScript 实现继承的机制,通过 __proto__ 一层一层向上查找属性和方法,直到找到或到达最顶层(null)为止。

也就是研究实例、构造函数、原型三者的关系

每个构造函数都有一个原型对象(prototype),原型对象有一个 constructor 属性指回构造函数。每个实例对象都有一个 __proto__ 指向构造函数的原型对象。查找属性时会按这个链条向上查找,形成原型链

image.png

console.log(Person===Person.prototype.constructor) // true console.log(person.__proto__ == Person.prototype) // true console.log(person.__proto__.constructor == Person) // true console.log(person.constructor == Person) // true

参考文章:前端面试题:JS中的原型和原型链_前端面试题原型-CSDN博客