javascript中的对象构造函数中的var属性vs this.property?

时间:2015-04-09 02:55:03

标签: javascript object constructor

对象构造函数中的“this.property”与“var property”之间有什么区别吗?

示例:

var person = function(){
    var age;
    this.firstName;        
}

2 个答案:

答案 0 :(得分:1)

是。例如,如果你像这样实例化一个新的person

var p = new person();

您将能够从外部访问firstName变量,该变量将成为新对象的属性:

console.log(p.firstName); // whatever you assigned it to

但不是age变量,其范围仅限于函数体内:

console.log(p.age); // undefined

答案 1 :(得分:0)

this.property返回调用对象的属性。在这种情况下,一个调用person()函数。

var property只需定义一个范围为函数person()

的变量