$("#test");
var test = document.getElementById("test");
$(test);
这两种方法的性能区别在哪里?
$("#test");
var test = document.getElementById("test");
$(test);
这两种方法的性能区别在哪里?
性能区别在,jQuery先调用自己的方法,自己的方法再调用document.getElementById("test");
但是调用之前会有一堆判断,看是传入了class,标签名,还是什么东西,这堆判断必然会影响速度。
6 回答2.1k 阅读✓ 已解决
1 回答858 阅读✓ 已解决
1 回答1.1k 阅读
2 回答774 阅读
2 回答622 阅读
2 回答609 阅读
1 回答682 阅读
从jquery源码的角度分析:
1.$('#test')
进入jquery.fn.的执行上下文后
2.var test = document.getElementById("test");
$(test);
这里直接用原生方法获取dom赋值给test再用jquery包装,与上面相比省去了一些多余的查找匹配过程,故速度更快一点。但是用原生方法还是最快的