现在的位置: 首页 > 综合 > 正文

构造函数创建对象的”this” ?

2011年07月25日 ⁄ 综合 ⁄ 共 591字 ⁄ 字号 评论关闭

构造函数创建对象的"this"

今天看到个练习:

var spencer2 = new Object();
  spencer2.age = 22 ;
  spencer2.country = "United States";

而用 this.age = 22; 则判断没通过。

这次演习是使用构造函数符号分配属性的对象。由于我们最初定义我们的对象作为一个新的对象 new Object(),而我们指定的任何属性,必须通过变量名,因为没有对象的范围。

function Person(age,country) {
    this.age = age;
    this.country = country;
}
var spencer3 = new Person(22,"United States");
console.log(spencer3.country);

看到区别了?

我们可以使用点符号分配(或查询)的任何对象的变量。文本对象的性质,这意味着他们可以读取和操作的任何函数,或控制台命令。

在这个练习中,即私有变量/方法,帮助限制范围。spencer2是一个自定义的对象没有属性,直到我们给他们使用构造函数符号。通过比较的方法,在上面的例子中,spencer3由Person构造函数,设定对象被实例化时,与新的Person()定义的给定的属性。在实例化对象的过程中,这有实例范围内,更特别是在此实例中,spencer3。

如果该对象的任何方法,这将发挥这些方法的运行变量的范围。

抱歉!评论已关闭.