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; // ... }
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); }); }
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!