


Detaillierte Erklärung des Unterschieds zwischen $(selector).each() und $.each() von Jquery
Wir haben alle die Each-Funktion in Jqurey verwendet und wissen alle, dass es zwei Möglichkeiten gibt, Each() aufzurufen: Eine besteht darin, über $.each() aufzurufen, die andere über $(selector). every() , also was ist der Unterschied zwischen ihnen?
Wenn Sie sich den Jquery-Quellcode ansehen, werden Sie wissen, dass $.each() die Kernimplementierung ist und $(selector).each() der aufgerufene $.each() ist. Lassen Sie uns zunächst $ analysieren .each( ) Quellcode (unten):
Die Funktion „each“ (obj, callback, args) empfängt 3 Parameter: obj – das Objekt oder Array, das durchlaufen werden soll, callback – die Callback-Funktion zu durchlaufen und auszuführen , args – das von Ihnen angegebene Array (ignorieren Sie es zuerst).
Die Implementierung jeder Methode in jQuery verwendet die Aufrufmethode. Erstens ist der Effekt des Arrays bei jedem gleich.
Sie können die Richtung per Anruf ändern.
var testCall = function(obj, callback){ callback.call(obj, 1); }
testCall(["1. Ändern Sie den Zeiger davon", "2. Die Funktion kann intern dadurch aufgerufen werden"], function(index){ //Mit der Aufrufmethode ist dies möglich Der Zugriff erfolgt direkt über das Objekt, das als erster Parameter des Aufrufs übergeben wurde.
Die Funktion kann über this aufgerufen werden Verwenden Sie nicht die Aufrufmethode. Diese wird nicht verwendet.
test(["1. Ändern Sie den Zeiger davon", "2. Die Funktion kann dadurch innerhalb der Funktion aufgerufen werden"], function(index){ //Aufrufmethode nicht verwenden , verwenden Sie dies nicht.
warning(this[index]); //undefiniert});var test = function(obj, callback){ callback(obj, 1); }
jQuery.each sollte der durch Aufruf geänderte Punkt sein;
Ich habe mir den jQuery-Quellcode nicht angesehen. Verwenden Sie callback.call, um ihn zu kopieren. Die Implementierungsmethode sollte dieselbe sein.
$.each([1,2,3], function (index, item) { console.log({index:index,value:item,_this:this}); });/* Object {index: 0, value: 1, _this: Number} Object {index: 1, value: 2, _this: Number} Object {index: 2, value: 3, _this: Number} */
1. Der Fall ohne Argumente
var each = function(arr, callback){ for( var index = 0 ; index < arr.length ; index++ ){ callback.call(arr[index], index, arr[index]); } } each([1,2,3], function (index, item) { console.log({index:index,value:item,_this:this}); });/* Object {index: 0, value: 1, _this: Number} Object {index: 1, value: 2, _this: Number} Object {index: 2, value: 3, _this: Number} */
Wenn das Objekt, das Sie durchlaufen möchten, ein Array-Typ ist, geben Sie diesen Codeblock ein
für Schleife
if(isArray) { for(; i < length; i++) { value = callback.call(obj[i], i, obj[i]); if(value === false) { break; } } }
und führen Sie dann mit der Aufrufmethode obj[i].callback(i,obj[i]) aus.
Daher beim Schreiben der Rückruffunktion Sie sollten sich darüber im Klaren sein, dass jquery jedes Objekt im Array verwendet, um Ihre Rückruffunktion auszuführen. Die übergebenen Parameter sind gleichzeitig der Index des Elements im Array und das Element, auf das auch die Rückrufmethode verweist das Element; In der nächsten Zeile wird ermittelt, ob die Rückruffunktion einen Wert zurückgegeben hat. Wenn die Rückruffunktion „false“ zurückgibt, wird die Schleife des Arrays verlassen. Wenn das von Ihnen übergebene Objekt auch durchlaufen werden kann, ist der Code derselbe wie bei der Array-Durchquerung oben
Wenn Sie ein Objekt übergeben, verwenden Sie for(x in y)
,
Das Prinzip ist das gleiche wie oben, außer dass es durch das Attribut x innerhalb des Objekts ersetzt wird, um die Rückruffunktion auszuführen, was obj.attr.callback( i,obj.attr);else { for(i in obj) { value = callback.call(obj[i], i, obj[i]); if(value === false) { break; } } }
2. Wenn Argumente vorhanden sind
Beim Aufruf von every() mit dem dritten Parameter wird der folgende Codeblock zur Analyse eingegeben:
Auf die gleiche Weise wird zunächst ermittelt, ob das Objekt, das Sie durchlaufen möchten, ein Array ist. Wenn es sich um ein Array handelt, wird das Element obj[i] des Arrays durchlaufen und obj[i].callback( ausgeführt. args)Achtung! Der hier übergebene Parameter ist das args-Array, das Sie übergeben haben. Dies unterscheidet sich vom args-Parameter ohne. Das heißt, wenn Sie jede Funktion aufrufen und Ihren eigenen Array-Parameter übergeben, werden die Callback-Parameter der Funktion
Die Liste ist das args-Array, das Sie übergeben. Für alles andere gilt das Gleiche wie oben.if(isArray) { for(; i < length; i++) { value = callback.apply(obj[i], args); if(value === false) { break; } } } else { for(i in obj) { value = callback.apply(obj[i], args); if(value === false) { break; } } }
$(selector).each(callback,args) Funktion empfängt 2 Parameter: callback – die Callback-Funktion, die durchlaufen und ausgeführt werden soll, args – das von Ihnen angegebene Array. Nachdem Sie die Funktion $.each() verstanden haben, ist $(selector).each einfach. Öffnen Sie den Quellcode und stellen Sie fest, dass die Funktion $.each() in $(selector).each aufgerufen wird.
Sie können sehen, dass beim Aufruf von $.each() der obj-Parameter wie folgt geschrieben wird: $(selector). Dies ist der JQuery-Selektor, der ein JQuery
each: function( callback, args ) { return jQuery.each( this, callback, args ); },
Zusammenfassung: Der Unterschied zwischen $.each() und $(selector).each() besteht darin, dass ersteres alle Objekte oder Arrays durchlaufen kann, während letzteres für JQuery-Selektoren zurückgegeben wird Jquery-interne Objekte werden durchlaufen, ersteres ist leistungsfähiger
Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung des Unterschieds zwischen $(selector).each() und $.each() von Jquery. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



In der C -Sprache ist der Hauptunterschied zwischen char und wchar_t die Zeichencodierung: char verwendet ASCII oder erweitert ASCII, wchar_t Unicode; char nimmt 1-2 Bytes auf, wchar_t nimmt 2-4 Bytes auf; char ist für englischen Text geeignet. Wchar_t ist für mehrsprachige Text geeignet. char ist weithin unterstützt, wchar_t hängt davon ab, ob der Compiler und das Betriebssystem Unicode unterstützen. char ist in der Charakterbereich begrenzt, WCHAR_T hat einen größeren Charakterbereich und spezielle Funktionen werden für arithmetische Operationen verwendet.

Der Unterschied zwischen Multithreading und Asynchron besteht darin, dass Multithreading gleichzeitig mehrere Threads ausführt, während asynchron Operationen ausführt, ohne den aktuellen Thread zu blockieren. Multithreading wird für rechenintensive Aufgaben verwendet, während asynchron für die Benutzerinteraktion verwendet wird. Der Vorteil des Multi-Threading besteht darin, die Rechenleistung zu verbessern, während der Vorteil von Asynchron nicht darin besteht, UI-Threads zu blockieren. Die Auswahl von Multithreading oder Asynchron ist von der Art der Aufgabe abhängt: Berechnungsintensive Aufgaben verwenden Multithreading, Aufgaben, die mit externen Ressourcen interagieren und die UI-Reaktionsfähigkeit asynchron verwenden müssen.

Es gibt keine integrierte Summenfunktion in der C-Sprache, daher muss sie selbst geschrieben werden. Die Summe kann erreicht werden, indem das Array durchquert und Elemente akkumulieren: Schleifenversion: Die Summe wird für die Schleifen- und Arraylänge berechnet. Zeigerversion: Verwenden Sie Zeiger, um auf Array-Elemente zu verweisen, und eine effiziente Summierung wird durch Selbststillstandszeiger erzielt. Dynamisch Array -Array -Version zuweisen: Zuordnen Sie Arrays dynamisch und verwalten Sie selbst den Speicher selbst, um sicherzustellen, dass der zugewiesene Speicher befreit wird, um Speicherlecks zu verhindern.

Char und Unsigned char sind zwei Datentypen, die Charakterdaten speichern. Der Hauptunterschied ist der Weg, um mit negativen und positiven Zahlen umzugehen: Wertebereich: char signiert (-128 bis 127) und nicht signiertes char nicht signiert (0 bis 255). Negative Zahlenverarbeitung: char kann negative Zahlen speichern, unsigned char kann nicht. Bitmodus: char Das höchste Bit repräsentiert das Symbol, nicht signiertes char unsigned Bit. Arithmetische Operationen: SHOR und unsigned char sind signierte und nicht signierte Typen, und ihre arithmetischen Operationen sind unterschiedlich. Kompatibilität: SHAR und nicht signiertes Zeichen

C -Sprachfunktionen sind die Grundlage für die Code -Modularisierung und das Programmaufbau. Sie bestehen aus Deklarationen (Funktionsüberschriften) und Definitionen (Funktionskörper). C Sprache verwendet standardmäßig Werte, um Parameter zu übergeben, aber externe Variablen können auch mit dem Adresspass geändert werden. Funktionen können oder haben keinen Rückgabewert, und der Rückgabewerttyp muss mit der Deklaration übereinstimmen. Die Benennung von Funktionen sollte klar und leicht zu verstehen sein und mit Kamel oder Unterstrich die Nomenklatur. Befolgen Sie das Prinzip der einzelnen Verantwortung und behalten Sie die Funktion ein, um die Wartbarkeit und die Lesbarkeit zu verbessern.

H5. Der Hauptunterschied zwischen Mini -Programmen und App ist: Technische Architektur: H5 basiert auf Web -Technologie, und Mini -Programme und Apps sind unabhängige Anwendungen. Erfahrung und Funktionen: H5 ist leicht und einfach zu bedienen, mit begrenzten Funktionen; Mini -Programme sind leicht und haben eine gute Interaktivität. Apps sind leistungsstark und haben reibungslose Erfahrung. Kompatibilität: H5 ist plattformübergreifend, Applets und Apps werden von der Plattform eingeschränkt. Entwicklungskosten: H5 verfügt über niedrige Entwicklungskosten, mittlere Mini -Programme und die höchste App. Anwendbare Szenarien: H5 eignet sich für Informationsanzeigen, Applets eignen sich für leichte Anwendungen und Apps eignen sich für komplexe Funktionen.

Obwohl C und C# Ähnlichkeiten haben, sind sie völlig unterschiedlich: C ist eine prozessorientierte, manuelle Speicherverwaltung und plattformabhängige Sprache, die für die Systemprogrammierung verwendet wird. C# ist eine objektorientierte, Müllsammlung und plattformunabhängige Sprache, die für Desktop-, Webanwendungs- und Spielentwicklung verwendet wird.

PDF mit Passwort geschützt in Photoshop exportieren: Öffnen Sie die Bilddatei. Klicken Sie auf "Datei" & gt; "Export" & gt; "Exportieren Sie als PDF". Stellen Sie die Option "Sicherheit" fest und geben Sie dasselbe Passwort zweimal ein. Klicken Sie auf "Exportieren", um eine PDF -Datei zu generieren.
