顶级职能中的“这个”

时间:2018-05-28 02:48:15

标签: javascript this

我理解this关键字是如何工作的,因为它是被调用的内容,它可以绑定等等。我不能得到的一件事是这样的例子:< / p>

function Person(first, last, age, gender, interests) {
  this.name = {
    first,
    last
  };
  this.age = age;
  this.gender = gender;
  this.interests = interests;
};

我假设会发生这种情况,它将附加到窗口对象并添加这些属性。是什么让“this”关键字在这种情况下的工作方式与我认为在方法或构造函数中工作的方式不同,其中this绑定到周围的函数?

2 个答案:

答案 0 :(得分:2)

准确地说,当您通过Person运算符调用new函数时,它将成为构造函数,this表示new新创建的对象。

换句话说,将new视为创建一个新的空对象,然后在新创建的对象上调用Person,最后将其完全返回“构造”。

答案 1 :(得分:1)