当使用 new 关键字创建一个对象实例时,函数内部发生以下改变:

  1. 创建新对象: 使用 new 关键字调用函数时,会创建一个新的空对象。

  2. this 指向: 函数内部的 this 指向新创建的对象实例,允许函数访问和操作该对象的属性和方法。

  3. 隐式返回: 如果构造函数没有显式地返回一个对象,则会隐式返回 this 指向的新对象。

例如:

function Person(name, age) {
  this.name = name;
  this.age = age;
}

const person = new Person('Alice', 25);
console.log(person); // 输出 Person { name: 'Alice', age: 25 }

在上述例子中,new Person('Alice', 25) 创建了一个新的 Person 对象实例。在构造函数 Person 内部,this 指向新创建的对象,属性 nameage 被赋予了相应的值,最终返回了这个新创建的对象实例。

Was this helpful?

0 / 0

发表回复 0

Your email address will not be published.