SetTimeout-Bereichsproblem

Habe ich ein setTimeout definiert, die innerhalb einer Funktion steuert der Spieler respawnen (ich bin ein Spiel zu schaffen):

var player = {
    ...
    death:(function() {
        this.alive = false;
        Console.log("death!");
        var timer3 = setTimeout((function() {
            this.alive = true;
            Console.log("alive!");
        }),3000);
    }),
    ...
}

Wenn es ausgeführt wird, lese ich in der console", " Tod!" und 3 Sekunden später "alive!". Allerdings alive ist nie wirklich true zurück, denn wenn ich Schreibe player.alive in der Konsole, es gibt false. Wie kommt es, dass ich sehen kann, "lebt!", aber die variable wird nie wieder auf true?

InformationsquelleAutor der Frage Polyov | 2012-07-30

Schreibe einen Kommentar