- 每个构造函数都有一个原型对象,原型有一个属性(constructor)指回构造函数,而实例有一个内部指针_proto_([[Prototype]]) 指向原型。实例与构造函数的原型之间有直接关系,实例与构造函数之间没有。
- 原型链的基本思想:上面如果原型是另一个类型的实例呢?意味着这个原型本身有一个内部指针指向另一个原型,相应的另一个原型也有一个指针(constructor)指向另一个构造函数。这样就在实例和原型之间构造了一条原型链.原型链还有一环,所有引用类型都继承Object,任何函数的默认原型都是一个Object实例,这就意味着这个实例有一个内部指针指向object.prototype.
- 每个构造函数都有一个原型对象,该原型对象有一个属性(constructor)指回构造函数,而实例有一个内部指针__proto__([[Prototype]]) 指向原型(即:蓝色 1)。实例与构造函数的原型之间有直接关系,实例与构造函数之间没有。
- 所有的函数(js中函数也是对象)都是 Function 的实例.所以函数都有一个属性__proto__指向Function的原型对象(即:红色3)
- Object 是 Function 的实例对象, Object.proto =