wie zu verwenden (Funktion(global) { ... })(this);
In dieser thread fand ich ein JavaScript code-snippet, welches ich verwenden möchte.
Der code sieht wie folgt aus:
(function(global) {
//the function code comes here
})(this);
Wie kann ich diese Funktion aufrufen, um den code auszuführen? Was muss ich übergeben, für diese global
variable?
- Sie haben nicht zu passieren, in dem alles
this
(was auch immerthis
ist - das würde, hängt vom Kontext ab) ist bereits vergangen, als der Wert derglobal
parameter.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wird die Funktion sofort ausgeführt wird, müssen Sie nicht führen Sie es durch den Aufruf.
Es ist eine Funktion, die wörtliche definition, gefolgt von zwei Klammern, die bewirkt, dass die Funktion aufrufen, sofort. Lesen Sie mehr: Sofort-Invoked Function Expression (IIFE)
Was auch immer code, den Sie Platz im inneren ist auf Anhieb laufen. Alles gelegt in der Aufruf-Klammern übergeben wird der Funktion als argument. Vorausgesetzt, Ihr Beispiel-code definiert wurde, in den globalen scope,
this
ist diewindow
Objekt, und ist verwiesen alsglobal
innerhalb der Funktion Körper. Es ist eine großartige Möglichkeit zu Kapseln, Ihre Programme zu vermeiden, variable Kollision, zwingen Sie den strikten Modus, und vieles mehr.Dieses Konstrukt definiert eine Funktion:
sofort und fordert es, vorbei
this
als parameter:Den Bezeichner
global
ist einfach der name dieses Parameters innerhalb der Funktion Körper. Zum Beispiel, versuchen SieEr ist bereits genannt:
(this)
this