Heim >Web-Frontend >js-Tutorial >Eine kurze Diskussion zu jeder Methode in Jquery
In diesem Artikel werden Ihnen die einzelnen Methoden in Jquery vorgestellt. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.
Empfohlenes Tutorial: jQuery-Tutorial
<strong>jQuery.each( object, callback,arg)</strong>
each()-Funktion ist eine Werkzeugfunktion, die von praktisch allen Frameworks bereitgestellt wird, mit der Sie die Attributwerte von Objekten und Arrays durchlaufen und ausführen können bewältigen.
Sowohl jQuery als auch jQuery-Objekte implementieren diese Methode. Bei jQuery-Objekten wird die Each-Methode einfach delegiert: Das jQuery-Objekt wird als erster Parameter an die Each-Methode von jQuery übergeben. Mit anderen Worten: Jede von jQuery bereitgestellte Methode ruft die Methode nacheinander für alle Unterelemente des durch Parameter 1 bereitgestellten Objekts auf. Die vom jQuery-Objekt bereitgestellte Methode „each“ ruft nacheinander die Unterelemente in jQuery auf.
jQuery.prototype.each = function(fn, args) { return jQuery.each(this, fn, args); }
Lassen Sie uns einen Blick auf die spezifische Implementierung jeder von jQuery bereitgestellten Methode werfen.
jQuery.each(obj,fn,arg)
Diese Methode verfügt über drei Parameter: das zu bearbeitende Objekt obj, die zu bearbeitende Funktion fn und die Funktionsparameter args .
Lassen Sie uns anhand des ojb-Objekts diskutieren:
1. Das obj-Objekt ist ein Array
Jede Methode ruft die Fn-Funktion nacheinander für die Unterelemente im Array auf, bis das Ergebnis durch Aufrufen eines bestimmten Unterelements zurückgegeben wird -element ist falsch, das heißt, wir können es mit der bereitgestellten fn-Funktion verarbeiten und jeden Methodenaufruf beenden, nachdem bestimmte Bedingungen erfüllt sind. Wenn jede Methode den arg-Parameter bereitstellt, ist der vom fn-Funktionsaufruf übergebene Parameter arg, andernfalls: der Unterelementindex, das Unterelement selbst
2 Das obj-Objekt ist kein Array
Der größte Unterschied Zwischen dieser Methode und 1 liegt: fn-Methode Es wird unabhängig vom Rückgabewert einzeln ausgeführt. Mit anderen Worten: Alle Eigenschaften des obj-Objekts werden von der fn-Methode aufgerufen, auch wenn die fn-Funktion false zurückgibt. Die im Aufruf übergebenen Parameter ähneln 1.
jQuery.each = function(obj, fn, args) { if (args) { if (obj.length == undefined) { for (var i in obj) fn.apply(obj, args); } else { for (var i = 0, ol = obj.length; i < ol; i++) { if (fn.apply(obj, args) === false) break; } } } else { if (obj.length == undefined) { for (var i in obj) fn.call(obj, i, obj); } else { for (var i = 0, ol = obj.length, val = obj[0]; i < ol && fn.call(val, i, val) !== false; val = obj[++i]) { } } } return obj; }
Es ist zu beachten, dass die spezifische Aufrufmethode von fn in jeder Methode nicht einfach fn(i, val) oder fn(args) ist, sondern fn.call(val,i,val) oder fn Die Form von apply (obj.args) bedeutet, dass Sie in Ihrer eigenen Implementierung von fn diesen Zeiger direkt verwenden können, um auf die Unterelemente des Arrays oder Objekts zu verweisen. Diese Methode ist eine Implementierungsmethode, die von den meisten jQuery verwendet wird.
var arr = ["one", "two", "three", "four", "five"]; var obj = { one: 1, two: 2, three: 3, four: 4, five: 5 }; jQuery.each(arr, function() { alert(this); }); /* one,two,three,four,five */ jQuery.each(obj, function(i, val) { alert(i+":"+val); }); /* one:1 two:2 three:3 four:4 five:5 */ jQuery.each(arr, function(i, val) { alert(i); }); /* 0,1,2,3,4 */ jQuery.each(arr, function(i, val) { alert(arr[i]); }); /* one tow three four five */
Weitere Kenntnisse zum Thema Programmierung finden Sie unter: Programmierunterricht! !
Das obige ist der detaillierte Inhalt vonEine kurze Diskussion zu jeder Methode in Jquery. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!