原型链
首先要清楚的是
prototype
创建的每个函数都有一个prototype(原型)属性,这个属性是一个指针,指向一个对象,而这个对象的用途就是包含可以由特定类型的所有实例共享的属性和方法。
好处就是:不必在构造函数中定义对象实例的信息,而是直接将这些信息添加到原型对象上
__proto
即是隐式原型 。1.每一个实例对象都有一个私有属性 proto ,该私有属性总是指向实例构造函数的原型对象;
2.同的原型对象”节点“通过 proto 指向进行串联连接,从而形成一条原型链。
注意:
1.函数就是 Function 的实例. 即 Function 就是函数的构造函数.
2.Object 是 函数, 因此在 Function 中, 它就是实例对象
3.可以知道所有的对象都有原型, 一步一步往上走, 都会汇集到 Object.prototype 中Object.prototype 是最大的对象.而Object的原型最终都会指向null