'这'在对象构造函数上

时间:2016-10-12 13:33:01

标签: javascript function object this

我偶然发现了这个'这个'在javascript工作与细节。

在w3school中,它解释了这是如何工作的。 (http://www.w3schools.com/js/js_object_definition.asp

"当在函数中使用时,它的值是"拥有的对象"功能。

当在对象中使用时,它的值是对象本身。"

根据我的理解,对象构造函数是函数,而不是对象,并且根据上面的定义'这个'在构造函数中,应该引用拥有此构造函数的对象(在全局范围内,它将是窗口对象)。

然而,'这个'指对象构造函数。这是为什么?

function person(first, last, age) {
   this.firstName = first;
   this.lastName = last;
   this.age = age;}

我已尝试查看有关堆栈溢出的其他示例,但他们似乎并未详细清除此概念。

1 个答案:

答案 0 :(得分:0)

在使用new this调用的构造函数中,引用正在构造的对象。