Horst: Methoden und setTimeout

Beitrag lesen

Ist es innerhalb von Methoden nicht möglich setTimeout zu verwenden?

Beispiel:

function methode() {
  alert (this.countdown);
  if (this.countdown--) setTimeout('this.methode()', 1000);
}

Das hat nicht funktioniert. Im zweiten Durchlauf ist this.countdown nicht mehr in der Funktion bekannt. Ersetze ich setTimeout('this.methode', 1000); durch this.methode(); funktioniert es. Die Verzögerung würde ich auch ohne setTimeout hinkriegen, aber ist das nicht eine unsaubere Lösung, weil es rekursiv ist?

Ich hoffe, ich habe mich einigermaßen verständlich ausgedrückt und mich nicht zu kurz gefaßt.