Io uso spesso $(this)
all'interno di gestori di eventi jQuery e non lo memorizzo mai. Se farò
var $this = $(this);
e userò variabile anziché il costruttore, sarà il mio codice ottenere qualsiasi significativa performance migliore?
prova JS Perf per misurare il guadagno di prestazioni da questa ottimizzazione: http://jsperf.com/jquery-this-caching
Dipende dalla frequenza con cui viene utilizzato. '$ (this)' costruisce un nuovo oggetto jQuery e tutto ciò che ne consegue. Generalmente, se userai '$ (this)' più di una volta in un blocco di codice, dovresti memorizzarlo nella cache. Soprattutto se lo fai in un ciclo. – Shmiddty
Sarà sempre più veloce mettere in cache '$ (this)' in una var. La micro-ottimizzazione è certa. Hai sicuramente bisogno di mettere in cache tutti i selettori, perché questo ha implicazioni molto più grandi. –
Se lo si valuta 100 volte all'interno dello stesso stack di chiamate, è possibile ottenere 1 o 2 millisecondi di esecuzione più lenta. –