假設我有一個匹配「.foo」的元素。
<div class="foo"></div>
我從經驗中學到了多次調用查找器的性能,如果我試圖多次更改同一個對象。
$(".foo").doOneThing();
$(".foo").doAnotherThing();
$(".foo").doSomethingElse();
// Makes jQuery look for ".foo" three times, bad!
與
$foo = $(".foo");
$foo.callAllThreeOfTheThingMethodsInThePreviousBlock();
// Calls $(".foo") only once, but occupies memory with a jQuery object version of the foo div.
我的問題是,有多少次你必須留出內存來存放jQuery對象,而不是再次作出了jQuery方法調用之前使用這個取景器?
我問,因爲有一天,我讓每一個發現者多次調用一個存儲的$ object變量;如果我只使用取景器,比如說兩三次,我的老闆曾經說過要使用取景器而不是存儲的物體。你對此有何看法?
三次找到相同的項目是沒有意義的,最好將它保存到局部變量中! – 2014-09-10 18:02:48
如果出現不止一次,我傾向於解除它。我爲所有事情做到了,即使是簡單的字符串。還有'$(「。foo」)。doOneThing()。doAnotherThing()。doSomethingElse();'會工作太大聲。 <3鏈。 – RaphaelDDL 2014-09-10 18:10:47
只需要一小搗蛋器來展示兩種不同的方式如何與大量操作相互作用。 http://plnkr.co/edit/lb3Cew3j1p5HE5goCgqd?p=preview – Pr0gr4mm3r 2014-09-10 19:05:47