我有一个快速的Bing,无法真正找到答案。
如果我发现使用$('something here')
150次的代码,那么它会更有效率:
var item = $('something here')
我知道很愚蠢的问题,但是它会更有效率,因为jQuery只需要找一次这个项目吗?
答案 0 :(得分:4)
根据这篇文章,将选择器分配给变量更有效,这是有道理的,因为jQuery不需要再扫描DOM以寻找与选择器匹配的元素。
http://geekswithblogs.net/renso/archive/2009/07/14/jquery-selector-efficiencycost-impact.aspx
它还提供了其他提示。例如,尽量避免单独使用类选择器。有趣的是,$('#someID')
之类的选择器比$('div#someID')
快。
答案 1 :(得分:3)
是的,存储生成的jQuery对象效率更高,速度可能更快。每次使用选择器时,您都会启动新搜索。 jQuery不缓存结果。如果将生成的jQuery对象存储在变量中,则实际上无需每次都反复运行搜索。
答案 2 :(得分:1)
请仔细阅读本文,以确切了解jQuery在屏幕后面的工作原理。 很好地解释了。
http://net.tutsplus.com/tutorials/javascript-ajax/quick-tip-jquery-newbs-stop-jumping-in-the-pool/