Heim > Web-Frontend > js-Tutorial > Warum „var self = this' in JavaScript verwenden?

Warum „var self = this' in JavaScript verwenden?

Patricia Arquette
Freigeben: 2024-12-13 17:56:10
Original
772 Leute haben es durchsucht

Why Use `var self = this` in JavaScript?

Verstehen des JavaScript-Idioms: var self = this

In JavaScript können Sie in bestimmten Szenarien auf das Idiom „var self = this“ stoßen . Um seinen Zweck zu verstehen, betrachten wir das Beispiel aus der WebKit HTML 5 SQL Storage Notes-Demo:

function Note() {
  var self = this;

  // ...
}
Nach dem Login kopieren

Kontext beibehalten

In diesem Beispiel ist „selbst“. Wird verwendet, um einen Verweis auf den ursprünglichen „diesen“ Kontext beizubehalten, selbst wenn sich der Kontext innerhalb verschachtelter Funktionen ändert. Event-Handler verwenden diese Technik häufig, insbesondere bei Abschlüssen.

Durch die Zuweisung von „this“ zu „self“ können sie beim Aufruf innerer Funktionen weiterhin auf den ursprünglichen „this“-Kontext zugreifen, der für den Zugriff auf die Instanz von entscheidender Bedeutung ist Eigenschaften und Methoden.

Alternative Benennung

Es ist erwähnenswert, dass der Name „self“ lediglich eine Konvention ist. Alternative Namen wie „das“ sind gleichermaßen gültig. Der Schlüssel besteht darin, eine Variable einzurichten, die die ursprüngliche „diese“-Referenz beibehält.

Funktionsbereich

In einem Kontext deklarierte Funktionen können auf Variablen und Funktionen zugreifen, die in diesem Bereich definiert sind oder in äußeren Bereichen. Dieses Prinzip gilt auch für verschachtelte Funktionen und Abschlüsse.

Beispiel

Betrachten Sie den folgenden Ereignisrückruf:

function MyConstructor(options) {
  let that = this;

  // ...

  document.addEventListener('click', (event) => {
    alert(that.someprop);
  });
}
Nach dem Login kopieren

In diesem Beispiel: ' that' behält den Kontext von 'MyConstructor' bei. Der Click-Event-Handler kann nun auf die Instanzeigenschaft „someprop“ des mit „MyConstructor“ erstellten Objekts zugreifen.

Das obige ist der detaillierte Inhalt vonWarum „var self = this' in JavaScript verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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