📜  JavaScript 中的 new 关键字是什么?(1)

📅  最后修改于: 2023-12-03 14:42:30.111000             🧑  作者: Mango

JavaScript 中的 new 关键字

在 JavaScript 中,new 关键字用于创建一个新对象。它接受一个函数作为参数,然后通过该函数创建一个新对象并返回该对象。

语法
var obj = new function_name(arguments);
  • function_name:要创建的对象的构造函数名称。
  • arguments:传递给构造函数的参数。此参数是可选的,可以省略。
示例
function Person(name, age) {
  this.name = name;
  this.age = age;
}
var john = new Person('John', 25);
console.log(john.name); // 输出 "John"
console.log(john.age); // 输出 25

在上述示例中,我们定义了一个构造函数 Person,它有两个参数 nameage。然后,我们使用 new 关键字创建了一个新对象 john,并将其赋值给变量 john。最后,我们通过 console.log() 输出了 john 对象的 nameage 属性的值。

new 关键字的工作原理

当使用 new 关键字创建对象时,它会执行以下操作:

  1. 创建一个空对象。
  2. 运行构造函数,将上下文设置为这个新对象。
  3. 返回该新对象。

因此,构造函数中的所有 this 引用都将指向新对象。

注意事项
  • 构造函数名称应该以大写字母开头,以便在调用时与普通函数进行区分。
  • 使用 new 关键字时,构造函数的返回值会被忽略。如果构造函数没有显式返回一个对象,则返回新创建的对象。
结论

在 JavaScript 中,new 关键字用于创建一个新对象。它接受一个函数作为参数,然后通过该函数创建一个新对象并返回该对象。new 关键字的工作原理是创建一个空对象,运行构造函数并将上下文设置为该新对象,最后返回该新对象。