__proto__ 和 prototype 的关系
因为经常说不清这两个的准确的关系,在这儿记录一下
prototype 原型
__proto__ 每个js对象都有一个 __proto__ 的属性,指向该对象的原型
通常来说 实力是通过对 __proto__ 属性的访问 去对 prototype对象进行访问
比如 const test = new Object() // test 在这儿就是一个实例 Object是一个构造函数
构造函数 ( 在这儿是Object ) 的 prototype 属性指向原型 所以 const objProto = Object.prototype
而objProto是一个js对象,上边说过 每一个js 对象都有一个 __proto__的属性,指向这个对象的原型
所以 test.__proto__ === objProto === Object.protype
“原型链是由原型对象组成的,每个对象都有__proto__属性,指向创建该对象的 构造函数的原型 ,然后通过__proto__属性将对象
链接起来,组成一个原型链,用来实现继承和共享属性”