我们已经知道,用var anObject=new aFunction()形式创建对象的过程实际上可以分为三步:

1,建立一个新对象:var anObject={}

2.  将该对象内置的原型对象设置为构造函数prototype属性引用的那个原型对象:

anObject._proto=aFunction.prototype;

 

3.将该对象作为this参数调用构造函数,完成成员设置等初始化工作。

aFunction.call(anObject,arguments)

 

对象建立后,对象上的任何访问和操作都只与对象自身及其原型链上的那串对象有关,与构造函数再扯不上关系了。换句话说,构造函数只是在创建对象的时候起到介绍原型对象和初始化对象两个作用。