In letzter Zeit frage ich mich, ob es einen Leistungsunterschied zwischen der Wiederholung des Selektors gibt, oder einfach nur eine Var verwenden und den Selektor darin speichern und nur darauf verweisen.
%Vor%oder nur
%Vor%Ich bevorzuge den zweiten Weg, weil es sauberer aussieht und besser wartbar ist.
Es gibt sicherlich einen Leistungsunterschied, da Sizzle nicht jedes Mal ausgeführt werden muss, aber es gibt auch einen Funktionsunterschied. Wenn sich der Domänenname zwischen dem ersten und dritten Aufruf ändert, enthält das zwischengespeicherte jQuery-Objekt immer noch den alten Satz von Elementen. Dies kann häufig auftreten, wenn Sie ein Set zwischenspeichern und dann in einem Callback verwenden.
Speichern der Ergebnisse von Ihnen jQuery-Auswahl zu einer Variablen ist schneller. Dies liegt daran, dass jQuery nicht jedes Mal nach den Ergebnissen suchen muss, wenn Sie versuchen, auf sie zuzugreifen.
Ich habe einige Leistungsmetriken zusammengestellt: Ссылка
In Chrome 26.0.1410.63 unter Mac OS X 10.8.2:
Auswahl: 40.276 Ops / Sek
Speichern der Variablen: 594.031.358 Ops / Sek.
Tags und Links jquery performance css-selectors