i
ist nur ein Funktionsparameter, der von retarder
function an die anonyme Funktion übergeben wird.
Was es tut ist:
%Vor%und Callback wird über anonyme Funktion definiert:
%Vor% Also ist i
eine Definition des Parameters der anonymen Funktion.
Es sieht wie eine Funktionsdeklaration aus:
%Vor% Also i
ist ein Wert, der als erster Parameter an die Funktion übergeben wird (die inline als anonyme Funktion deklariert wird), vermutlich durch die inneren Abläufe der Methode retarder
Du gibst die Funktion in.
Das erneute Schreiben des Codes, so dass es ein Bit besser lesbar ist, macht dies ein wenig klarer:
%Vor%Und Sie können es dann umschreiben sogar klarer:
%Vor%Der Grund, warum Sie das nicht verstehen, ist, wenn Sie mit der Verwendung von anonymen Funktionen in JavaScript nicht vertraut sind. Sie kennen wahrscheinlich etwas wie:
%Vor% i
ist ein Parameter für die Funktion double
. In JavaScript könnte die gleiche Funktion wie folgt ausgeführt werden:
In diesem Fall wird eine anonyme Funktion erstellt und dann einer Variablen double
zugewiesen. i
ist immer noch nur ein Parameter. Beide können dann wie double(3)
aufgerufen werden.
In dem von Ihnen angegebenen Beispiel wurde die anonyme Funktion nicht einer Variablen zugewiesen, sondern als Argument an eine andere Funktion übergeben.
Die Variable i in der Deklarationsfunktion der anonymen Funktion (i) ist der Name, der für den ersten Parameter innerhalb des Funktionskörpers verwendet wird. Es entspricht keiner anderen Variable auf Ihrer Seite.
Wenn Sie versuchen, den verschleierten Code zu entschlüsseln, den Sie zu sein scheinen, dann suchen Sie wahrscheinlich nach dieser Funktionsdefinition ...
%Vor%Ich musste etwas tiefer graben, um es zu finden, weil es dynamisch in einem eval () generiert wurde.
Um Ihre Frage zu beantworten, ist der Parameter "i" also das Objekt "ul" (in dem von Ihnen geposteten Code).
Wenn Sie sich die Retarder-Funktion ansehen, gibt sie "this" zurück, genau wie die meisten anderen jquery-Plugins, so dass die Kettenfähigkeit der Plugins erhalten bleibt.
entschärft den Spaß nicht?
Die Variable i
repräsentiert das eigentliche Objekt (wie das Schlüsselwort this
)
Erklären Sie mehr:
1) Ist ein Parameter für eine anonyme Funktion, wie wir sehen können:
%Vor% 2) Ist ein Verweis auf das aktuelle Objekt ( this
).
Wenn dieses jquery-Plugin beendet ist, ruft es die Callback-Funktion auf:
%Vor%Wo das ist Parameter.
Tags und Links javascript jquery