# new实例对象的过程
* 创建新对象
```
var person = {};
```
* 将新对象的__proto__指针指向构造函数的原型对象
```
person.__proto__ = Person.prototype;
```
* 将构造函数的作用域复制给新对象(绑定this)
```
Person.call(person);
```
* 执行构造函数内部的代码,将属性添加给新对象
* 返回这个新对象