使用new关键字调用函数(var p=new ClassA( ))的具体步骤:
1. 创建空对象;
var p= {};
2. 设置新对象的__proto__属性指向构造函数的prototype对象;
p.__proto__ = ClassA.prototype;
3. 使用新对象调用函数,函数中的this被指向新实例对象:
ClassA.call(p); //{}.构造函数();
4. 将初始化完毕的新对象地址,保存到等号左边的变量中。使用new关键字调用函数(var p=new ClassA( ))的具体步骤:
1. 创建空对象;
var p= {};
2. 设置新对象的__proto__属性指向构造函数的prototype对象;
p.__proto__ = ClassA.prototype;
3. 使用新对象调用函数,函数中的this被指向新实例对象:
ClassA.call(p); //{}.构造函数();
4. 将初始化完毕的新对象地址,保存到等号左边的变量中。