Es scheint, dass die meisten interessanten und wichtigen Tipps bereits erwähnt wurden, daher ist dies nur eine kleine Ergänzung.
Der kleine Tipp ist die Funktion jQuery.each (Objekt, Rückruf) . Jeder benutzt wahrscheinlich die jQuery.each (Rückruf) Funktion , um über das jQuery-Objekt selbst zu iterieren, da dies natürlich ist. Die Dienstprogrammfunktion jQuery.each (Objekt, Rückruf) iteriert über Objekte und Arrays. Lange Zeit habe ich irgendwie nicht gesehen, wofür es sein könnte, abgesehen von einer anderen Syntax (es macht mir nichts aus, alle modischen Loops zu schreiben), und ich schäme mich ein bisschen, dass ich erst kürzlich seine Hauptstärke erkannt habe.
Da der Hauptteil der Schleife in jQuery.each (Objekt, Rückruf) eine Funktion ist , erhalten Sie jedes Mal in der Schleife einen neuen Bereich, was besonders praktisch ist, wenn Sie Abschlüsse in der Schleife erstellen .
Mit anderen Worten, ein typischer häufiger Fehler besteht darin, Folgendes zu tun:
var functions = [];
var someArray = [1, 2, 3];
for (var i = 0; i < someArray.length; i++) {
functions.push(function() { alert(someArray[i]) });
}
Wenn Sie nun die Funktionen im functions
Array aufrufen , erhalten Sie dreimal eine Warnung mit dem Inhalt undefined
, der höchstwahrscheinlich nicht Ihren Wünschen entspricht. Das Problem ist, dass es nur eine Variable i
gibt und alle drei Verschlüsse darauf verweisen. Wenn die Schleife beendet ist, ist der Endwert von i
3 und someArrary[3]
ist undefined
. Sie können dies umgehen, indem Sie eine andere Funktion aufrufen, die den Abschluss für Sie erstellt. Oder Sie verwenden das Dienstprogramm jQuery, das es im Grunde für Sie erledigt:
var functions = [];
var someArray = [1, 2, 3];
$.each(someArray, function(item) {
functions.push(function() { alert(item) });
});
Wenn Sie nun die Funktionen aufrufen, erhalten Sie erwartungsgemäß drei Warnungen mit den Inhalten 1, 2 und 3.
Im Allgemeinen ist es nichts, was Sie nicht selbst tun könnten, aber es ist schön zu haben.