Treffen Sie die folgenden Codezeilen, können Sie aber nicht verstehen.
Was ist das (/ .../)(this); Zweck in Javascript? Hat es einen Namen für dieses Muster?
Code wie folgt:
%Vor% Dieses Muster ist eine sofort aufgerufene Funktion Expresssion ". Kurz gesagt, es ist nur eine Funktion, die sofort ausgeführt wird. Das this
am Ende ist ein Parameter, der an die innere Funktion gesendet wird, auf die als exports
In Ihrem Beispiel können wir annehmen, dass was auch immer this
war, es ist ein Objekt, dem eine Move
-Methode hinzugefügt wurde.
Einige nennen dieses Muster auch das " Modulmuster " in gewisser Weise dass es eine "contained environment" erzeugt, so dass das Zeug darin aufgrund eines neuen Funktionsumfangs nicht sichtbar ist. mit anderen Worten, was auch immer drinnen ist, sieht das Äußere, aber das Äußere kann nur sehen, was das Innere es sehen lässt
Dieses Muster macht exports
zum Zeitpunkt der Ausführung einfach this
zugewiesen.
Unter der Annahme des globalen Gültigkeitsbereichs und eines Browsers zeigt this
auf das Objekt window
.
Unter Berücksichtigung dieser Annahmen sollte window.Move
die Funktion enthalten, die innerhalb dieses IIFE (Ausdruck der direkt aufgerufenen Funktion) zugewiesen ist.
Wenn diese Funktion in einem anderen Kontext aufgerufen wurde, in dem this
nicht window
ist, weist sie diese Methode dem an, was this
in der äußeren Umgebung war.
Dieses Muster wird "Modulmuster" genannt. Es gibt verschiedene Untermuster und dieses verwendete das erweiterte Modulmuster.
Zuerst importieren wir das Modul, dann fügen wir Eigenschaften hinzu, dann exportieren wir es. Hier ein Beispiel, das unser MODUL von oben erweitert:
Weitere Informationen zu diesem Modul-Muster finden Sie unter Ссылка
Lesen Sie mehr über allgemeine Javascript-Muster Ссылка
Tags und Links javascript