Javascript CoffeeScripts类-访问回调中的属性

Javascript CoffeeScripts类-访问回调中的属性,javascript,coffeescript,Javascript,Coffeescript,我有一个简单的问题。我有Foo课,在constructor我开始计时。在计时器回调中,我想要警报类属性,但我会得到“未定义”,为什么 谢谢你的帮助 因为这个(或@对于CoffeeScript) 您应该使用粗箭头: runBar: => alert @simpleProperty #fooBar 看到它在工作。在我的理解中,如果调用函数foo.runBar(),这个指针将与对象foo绑定 因此,在函数中,this.simpleProperty将被视为foo.simpleProperty

我有一个简单的问题。我有Foo课,在constructor我开始计时。在计时器回调中,我想要警报类属性,但我会得到“未定义”,为什么


谢谢你的帮助

因为
这个
(或
@
对于CoffeeScript)

您应该使用粗箭头:

runBar: =>
  alert @simpleProperty #fooBar

看到它在工作。

在我的理解中,如果调用函数
foo.runBar()
这个
指针将与对象
foo
绑定

因此,在函数中,
this.simpleProperty
将被视为
foo.simpleProperty


显然,它返回未定义的

哇,胖箭头的用法非常好。这应该在CoffeeScript的页面上作为示例给出。
这个
(在CoffeeScript中称为
@
)在
foo.runBar()时不一定是
foo
。如果
runBar
是一个绑定函数,那么无论如何调用
runBar
,该
都将是绑定的函数。这并不重要,因为问题实际上是在做
f=foo.runBar;f()
因此在调用
runBar
时没有
foo
runBar: =>
  alert @simpleProperty #fooBar