构造函数:
function Animals(){ };
实例对象:
var pig = new Animals(); var pig1= new Animals();
实例原型:
Animals.prototype
pig._proto_
实例原型找构造函数:
Animals.prototype.constructor
pig._proto_.constructor
原型对象的原型
Animals.prototype._proto_
再继续往下找原型
Animals.prototype._proto_._proto_一直找到空null为止。
Animals,用new创建*实例对象pig和pig1
函数具有prototype属性。Animals.prototype是animals创建的实例对象的原型。而原型则可以通过constructor属性拿到构造函数animals。
于是构造函数和它的原型就找到了对应。
而通过构造函数创建的实例对象则通过 proto 指向实例原型。 pig.proto
实例原型本身也是对象,因此他也可以用 proto 找到自己的原型Object.prototype。
实例对象可以通过原型链拿到别人的属性。
)