[JQuery]学习——JQuery编写性能分析

来源:互联网 发布:电子商城微信源码 编辑:程序博客网 时间:2024/06/05 23:47

JQuery性能分析:

理论上来讲,jQuery 提供的方法find()、next()、nextAll()和children()运行速度要快于使

用高级选择器。因为他们实现的算法有所不同,高级选择器是通过解析字符串来获取节点对
象,而jQuery 提供的方法一般都是单个选择器,是可以直接获取的。但这种快慢的差异,
对于客户端脚本来说没有太大的实用性,并且速度的差异还要取决了浏览器和选择的元素内

容。

 综上所属,最快的是find()方法,最慢的是$('#box p')这种高级选择器。如果一开始将
$('#box')进行赋值,那么jQuery 就对其变量进行缓存,那么速度会进一步提高。
var box = $('#box');
var p = box.find('p');

注意:我们应该推荐使用哪种方案呢?其实,使用哪种都差不多。这里,我们推荐使用
jQuery 提供的方法。因为不但方法的速度比高级选择器运行的更快,并且它的灵活性和扩展
性要高于高级选择器。使用“+”或“~”从字面上没有next 和nextAll 更加语义化,更加清
晰,jQuery 的方法更加丰富,提供了相对的prev 和prevAll。毕竟jQuery 是编程语言,需要
能够灵活的拆分和组合选择器,而使用CSS 模式过于死板。所以,如果jQuery 提供了独立
的方法来代替某些选择器的功能,我们还是推荐优先使用独立的方法。

0 0