1:创建一个空对象,并且this变量引入该对象,同时继承该函数的原型 2:设置原型链,空对象指向构造函数的原型对象 3:执行函数体,修改构造函数this指针指向空对象,执行函数体 4:判断返回值,有返回对象就用该对象,没有的话创建一个对象