Ich habe ein Problem damit, was der Browser als "dies" betrachtet. Im folgenden Beispiel wird der Aufruf von pingMe() auf abc 1 Sekunde warten und dann wird der Browser sagen, dass Object DOMWindow keine Methode 'func' hat. Anstatt 'this' auf die Instanz der Klasse ABC (abc) aufzulösen, wird stattdessen das DOMWindow aufgelöst, als ob das Objekt nicht beteiligt wäre. Ich verstehe offensichtlich nicht, wie setTimeout in Bezug auf den Callback-Bereich funktioniert. Irgendwelche Vorschläge, wie ich diesen Callback erfolgreich machen kann?
class ABC
@func = null
constructor: (func) ->
@func = func
pingMe: ->
setTimeout(doPing, 1000)
doPing = ->
@func()
abc = new ABC ->
alert "HI"
abc.pingMe()