find 和 DOM遍历孰快孰慢~

做个无聊的测试,测试下,$('.XX .CCC') 和 $('.XX').find('.CCC')这两个谁快谁慢。。。

我想我今天肯定是闲死了。。

 

不过有个好玩的发现。但是我这个只是一个简单的例子,不能用大数据做统计分析。。只能说代表了一种现象。

 

页面结构:

 View Code

JS:

View Code 

 

10万次遍历的测试结果:

1: 1427956016805
2: 796
3: 692
1: 1427956018293
2: 803
3: 1077

 

可以看到:1. 通过id获取某个class的子节点,直接遍历比find要慢;

2. 通过class获取某个class的子节点,直接遍历比find要快很多。

3. 通过class获取某个class的子节点,比通过id获取某个class的子节点,要慢;

 

为此做了另外一个测试,把标识为a的id 和 class调换了位置;

10万次遍历的测试结果是:

1: 1427956790018

 

2: 783
3: 613
1: 1427956791414
2: 771
3: 1063

 

还可以看出来,1、2、3成立; 

4. 通过class获取某个class的子节点,与位移有关系~~,尽量比较靠近,速度比较快~~

 

 

好吧,无聊的测试~~权作消遣~。权衡之,还是使用 class.class 这类来搞定~~ 

 

posted on 2015-04-02 14:46  hanyuxinting  阅读(267)  评论(0编辑  收藏  举报

导航