ブラウザが「これ」と見なすものに問題があります。次の例では、abcでpingMe()を呼び出すと1秒間待機し、ブラウザはオブジェクトDOMWindowにメソッド'func'がないと表示します。'this'をクラスABC(abc)のインスタンスに解決する代わりに、オブジェクトが関与していないかのように、代わりにDOMWindowに解決します。コールバックスコープに関してsetTimeoutがどのように機能するかをはっきりと理解していません。このコールバックを成功させる方法についての提案はありますか?
class ABC
@func = null
constructor: (func) ->
@func = func
pingMe: ->
setTimeout(doPing, 1000)
doPing = ->
@func()
abc = new ABC ->
alert "HI"
abc.pingMe()