new的作用
一种创建对象的方法,使用new关键字来创建一个拥有独立内存区域和指向原型的指针的对象。当我们使用new的时候,js解析器会分配一块内存空间,用以存放当前的对象的自有属性。之后解析器会给这一对象一个_proto_属性指向的原型对象内容。
构造函数:
用new关键字来调用的函数,首字母一般大写,构造函数会有一个属性prototype一个原型对象prototype,prototype的构造函数constructor指向该函数
用new生成的实例有一个__proto__指向该函数的prototype原型对象
(1) 创建一个新对象;
(2) 将构造函数的作用域赋给新对象(因此 this 就指向了这个新对象) ;
(3) 执行构造函数中的代码(为这个新对象添加属性) ;
(4) 返回新对象。