Heim > Web-Frontend > js-Tutorial > Wie kann ich den „this'-Kontext im „setInterval'-Callback von JavaScript beibehalten?

Wie kann ich den „this'-Kontext im „setInterval'-Callback von JavaScript beibehalten?

Patricia Arquette
Freigeben: 2024-11-29 10:34:14
Original
294 Leute haben es durchsucht

How Can I Preserve the `this` Context in JavaScript's `setInterval` Callback?

Dies im setInterval Callback von JavaScript beibehalten

In JavaScript bezieht sich das Schlüsselwort this auf das Objekt, das den aktuell ausgeführten Code besitzt. Dies kann bei der Verwendung von setInterval problematisch werden, da die Callback-Funktion in einem anderen Kontext ausgeführt wird und der Zugriff auf das ursprüngliche This verloren geht. Um dies zu umgehen:

Zugriff darauf in setInterval-Handlern

Um den Zugriff darauf im setInterval-Rückruf zu ermöglichen, können wir die bind()-Methode verwenden:

this.intervalID = setInterval(this.retrieve_rate.bind(this), this.INTERVAL);
Nach dem Login kopieren

Hier , bind(this) stellt sicher, dass sich this innerhalb des Recall_Rate-Rückrufs immer auf das Objekt bezieht, in dem das Intervall festgelegt wurde (d. h. das Objekt, in dem sich prefs befindet). definiert).

Mit dieser Änderung können Sie jetzt innerhalb des ajax.onload-Rückrufs auf this.prefs zugreifen:

ajax.onload = function()
{
    // Access this.prefs here
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich den „this'-Kontext im „setInterval'-Callback von JavaScript beibehalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage