javasciptnew 操作符具体干了什么呢?
时间: 2024-01-20 15:02:21 浏览: 80
在JavaScript中,new操作符用于创建一个对象实例,并且调用该对象的构造函数来初始化这个实例。具体而言,当使用new操作符创建对象时,它会执行以下几个步骤:
1. 创建一个新对象:new操作符会创建一个新对象,并将该对象的__proto__属性设置为构造函数的prototype属性。
2. 绑定this指针:在新对象创建完成后,new操作符会将构造函数的this指针绑定到新对象上,从而使构造函数中的this关键字指向新对象。
3. 调用构造函数:当this指针绑定完成后,new操作符会调用构造函数,并将参数传递给构造函数。
4. 返回新对象:如果构造函数没有显示返回一个对象,则new操作符会返回新创建的对象实例。否则,它会返回构造函数中显示返回的对象。
需要注意的是,如果构造函数中使用了return语句并返回了一个非对象类型的值(比如字符串、数字等),则new操作符会忽略该返回值,并返回新创建的对象实例。同时,由于JavaScript中的对象是动态的,因此使用new操作符创建的对象可以随时添加、删除或修改属性和方法。
阅读全文