说原型,他首先是 一个 对象,
其次,所有的对象都有原型
所以:原型对象他自己也有属于他的原型对象
隐式原型: 对象.__proto__
。
显示原型: 构造函数.prototype
。
prototype 是函数才有的属性
_ _proto _ _ 是每个对象都具有的属性
对象:对象是构造函数实例化出来的,构造函数是他爹,对象可以通过.__proto__
来指向原型对象
构造函数:是对象他爹,可以通过.prototype
来指向对象的原型对象
原型对象:原型对象上的属性和方法可以被对象直接使用
顶层都是原型是 Object.prototype
顶层的顶层是null
,null
没有原型对象了
function Person(){}
//问:Person的原型对象是谁?
//答:Function.prototype()
//解析:
//Person是由函数构造出来的,Person是Function的对象,Function是Person他爹,所以Person.__proto__===Function.prototype
原文:https://www.cnblogs.com/letgofishing/p/15058897.html