【问题标题】:Why do you need to use this.property=property in objects?为什么需要在对象中使用 this.property=property?
【发布时间】:2013-03-04 13:18:49
【问题描述】:

为什么需要在对象中使用 this.property = property? 是用来定义对象“外部世界”的属性吗?

function Person(property) {
this.property = property;
}
var john = new Person(true);

【问题讨论】:

  • 因为方法运行的上下文(即绑定到this的对象)不属于方法内部的全局范围,除非你使用with(不推荐,不在严格模式下可用,并且仅适用于读取,不适用于写入)。
  • @yckart (你可以直接输入[ask],输出为How to Ask)
  • @doorknob 不错,不知道。谢谢!

标签: javascript oop object this


【解决方案1】:

如果您不这样做,john.property 将是未定义的。

【讨论】:

    【解决方案2】:

    this关键字用来指代被执行函数的拥有者:

    http://www.quirksmode.org/js/this.html

    如前所述,您需要它来定义john.property,因为传递给函数的property 变量将在函数执行后过期。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-28
      • 2011-07-05
      • 1970-01-01
      • 1970-01-01
      • 2012-04-21
      • 2016-08-19
      相关资源
      最近更新 更多