我不是一个jQuery专家(甚至不是一个好用户),我还没有研究它的整个源代码(只有一小部分不能帮助我解决这个问题).
有人可以帮我解释一下吗?
这个:
$p.find("input,select");
Run Code Online (Sandbox Code Playgroud)
......使用原生的querySelectorAll.
这个:
$p.find("input");
$p.find("select");
Run Code Online (Sandbox Code Playgroud)
......使用原生的getElementsByTagName.
该getElementsByTagName简直是快,也许是因为它是一个非常简单的选择,并且存在的时间,给它进行优化更多的时间.
此外,当jQuery使用时querySelectorAll,document即使您从指定的上下文中搜索,它也会这样做,因此这会产生影响.要将结果缩小到您提供的上下文,它会更改您的选择器以使用元素的ID,或者如果不存在则将其赋予临时值.
我更新了你的测试,以进行更多的比较.表明如果您真的关心性能,则应使用本机API.
| 归档时间: |
|
| 查看次数: |
153 次 |
| 最近记录: |