标签:
function Person(){}
undefined
typeof Person
"function" //Person是一个构造函数
p=new Person();
Person {} //p是Person函数构造的一个实例,是一个Person{}对象
p.__proto__ //__proto__属性只能用在对象上,表示该对象的原型对象。该属性在firefox,chrome中有效
Person {}
Person.prototype //prototype属性只能用在函数上,而且任何函数都有该属性,其实该属性也是一个对象。
Person {}
p.__proto__===Person.prototype
true //通过构造函数创建对象时,构造函数的prototype属性将被作为原型赋值给所有的对象实例(也就设置了实例的__proto__属性),也就是说所有实例的原型引用的都是函数的prototype属性
p.__proto__.__proto__
Object {} //实例p的原型的原型是一个Object{}对象
Person.prototype.__proto__
Object {}
Person.prototype.constructor //Person{}对象的构造器
function Person(){} //"Person.prototype"对象和Person函数通过"constructor"和"prototype"实现了相互引用.
标签:
原文地址:http://www.cnblogs.com/beast-king/p/4970685.html