new operator - JavaScript | MDN
js中new 函数生成新对象的过程,new Person的过程
new function Person(){this.name
='person';console.log('in Person')} // 返回新生成的对象
function Person(){this.name
='person';console.log('in Person')} //此时还是普通函数
Person()
var aa = new Person();
- 生成一个空的,普通js对象给aa,这个普通对象原型链上面为Object
- 把生成的普通对象的constructor指向这个Person这个函数
- 把Person函数里的this替换为生成的对象
- 如果不需要返回就返回这个生成的对象,需要返回时,就把这个对象赋值给aa