Zugriff darauf in setInterval-Handlern in JavaScript
Wenn Sie setInterval verwenden, um die Ausführung einer Funktion in einem bestimmten Intervall zu planen, ist es häufig erforderlich, darauf zuzugreifen Objekt, das das Intervall innerhalb der Handlerfunktion initiiert hat. Allerdings verweist das Schlüsselwort this im Handler möglicherweise nicht auf den richtigen Kontext, was zu Fehlern führt.
Lösung: Verwenden von bind
Um sicherzustellen, dass sich das Schlüsselwort this bezieht Um das gewünschte Objekt innerhalb des setInterval-Handlers zu erstellen, können Sie die Methode bind() verwenden. Wie im folgenden Code gezeigt:
this.intervalID = setInterval(this.retrieve_rate.bind(this), this.INTERVAL);
Durch die Bindung der Funktion „retrie_rate“ an den aktuellen Kontext „this“ zeigt das Schlüsselwort „this“ in der Funktion „ajax.onload“ korrekt auf das Objekt, das das Intervall initiiert hat. Dadurch können Sie nach Bedarf auf die Eigenschaft this.prefs zugreifen.
Das obige ist der detaillierte Inhalt vonWie kann ich in JavaScript korrekt auf „this' in „setInterval'-Handlern zugreifen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!