Wenn jQuery verwendet, weiß ich, dass Sie eher ein Objekt gespeichert werden sollten als den DOM wiederholt quert:
// This is good
var something = $(".some-class")
Meine Frage des jQuery ist nicht $(this)
ein ähnliches Performance-Problem hat?
// should I do this?
var current_object = $(this)
mit $(this)
: Soll ich das tun?
(Dies ist mein obligatorischer this
ist verwirrend Witz)
Wenn '$ (this)' ein neues jQuery-Objekt einleitet, dann würde 'var foo = $ (this)' einfach eine Kopie davon machen? Das klingt, als würde es die Performance * wirklich * verletzen, anstatt zu helfen, denn jetzt haben Sie zwei identische Objekte. – Scribblemacher
Wenn Sie es nur einmal benutzen, würde das die Leistung beeinträchtigen. Es würde Leistung helfen, wenn Sie es mehr als einmal verwenden. Dasselbe gilt für Ihr '$ (" selector ")' Beispiel - die Variable hilft nur, wenn Sie sie mehrmals verwenden. – Flimzy
Auch wenn es mehrmals verwendet wird, wie würde es helfen? Anders als '$ ([Selektor])' würde ich annehmen, dass '$ (this)' nicht das DOM transversieren muss. Wären 'foo' und' $ (this) 'grundsätzlich nicht auf einem niedrigen Niveau? Vielleicht verstehe ich die Natur von jQuery-Objekten nicht. (Ich weiß, wir reden hier über winzige Leistungsunterschiede; ich bin nur neugierig) – Scribblemacher