js中 new 运算符的作用

在 JavaScript 中,new 运算符用于创建一个对象实例。它的作用是通过调用构造函数创建一个新的对象,并且将该对象作为上下文来执行构造函数,最后返回这个新创建的对象。


使用 new 运算符的一般语法如下:

let newObj = new Constructor();

其中,Constructor 是一个构造函数,newObj 是通过该构造函数创建的新对象。

当使用 new 运算符创建对象时,它会执行以下操作:

  1. 创建一个空对象。
  2. 将新对象的原型链接到构造函数的原型(__proto__ 指向构造函数的 prototype)。
  3. 将构造函数的作用域赋给新对象(因此在构造函数中可以使用 this 关键字来引用新对象)。
  4. 执行构造函数,并将新对象作为构造函数的上下文(也就是 this 的值)。
  5. 如果构造函数没有明确返回一个对象,则返回新创建的对象;否则,返回构造函数中返回的对象。

示例代码:

// 定义一个构造函数
function Person(name, age) {
  this.name = name;
  this.age = age;
}

// 使用 new 运算符创建对象实例
let person1 = new Person('John', 25);
console.log(person1.name); // 输出 "John"
console.log(person1.age); // 输出 25

在上面的示例中,我们定义了一个构造函数 Person,它有两个参数 nameage,并将这些参数赋值给新创建的对象的属性。然后,使用 new 运算符创建了一个名为 person1 的新对象实例。

需要注意的是,new 运算符是 JavaScript 中用于创建对象的常用方式,它与普通的函数调用有所不同。通过使用 new 运算符,我们可以创建一个具有特定属性和方法的对象,并且该对象与构造函数的原型链相关联。

posted @ 2023-05-19 17:16  CodeFan*  阅读(131)  评论(0编辑  收藏  举报