以下过程是相同的
var Zxy = function ( lover ) {
this.lover = lover;
}
--------------------------------------------
var z = new Zxy("lp");
--------------------------------------------
var z = {};
z.__proto__ = Zxy.prototype;
Zxy.call( z , "lp" );
由上面的代码可以看出
对象创建的过程有三步
第一步 创建一个空对象
第二步 将对象的原型链赋值 注意 在对象中原型链为__proto__ 在类中为prototype
第三步 创建的空对象调用初始化方法