为什么jQuery的$ .each这么快?

tdoakiiii

我必须将许多XML数据解析为对象。我想到了三种将XML转换为对象的方法:

XML格式

<myXml>
  <tag1 val = "someVal"/>
  <tag2 val = "someVal"/>
  <tag3 val = "someVal"/>
</myXml>

选项1:使用.find()

var xml = getMyXml();
var myObj = {
   1 : xml.find('tag1').attr('val'),
   2 : xml.find('tag2').attr('val'),
   3 : xml.find('tag3').attr('val'),
}

选项2:使用.each()

var xml = getMyXml();
var myObj = {
   1 : 'tag1',
   2 : 'tag2',
   3 : 'tag3',
}
$.each(myObj, function(i,e){
  myObj[i] = xml.find(e).attr('val');
});

选项3:阵列

var xml = getMyXml();
var myArr = ['tag1','tag2','tag3']
var myObj = {};
for(var i = 0; i < myArr.length; i++){
 myObj[i] = xml.find(myArr[i]).attr('val');
}

使用此性能http://jsperf.com/each-vs-arraysdfsdf 选项2比其他两个选项都快82%。为什么?

如果您不将数组和jquery混合使用,只需将纯JavaScript函数与array一起使用,则结果将完全不同,并且速度会更快。使用jquery时,选择器的每个开销都得到了优化,这可能是它在测试用例中更快的原因。

var len = digitalArr.length; //Cache the length
var i = 0;
for (; i < len ; i++) {
  obj[i] = xmlobj.getElementsByTagName(''+digitalArr[i]+'')[0].getAttribute('val');
}

这里检查jsperf结果

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么用jQuery元素包装元素这么快

来自分类Dev

为什么std :: rotate这么快?

来自分类Dev

Python集排序,为什么这么快?

来自分类Dev

与SQLite相比,为什么Realm这么快?

来自分类Dev

为什么heapq.heapify这么快?

来自分类Dev

为什么Regex的Matches功能这么快?

来自分类Dev

为什么Numpy的克朗这么快?

来自分类Dev

为什么C#OrderBy这么快?

来自分类Dev

为什么`updatedb`程序运行这么快?

来自分类Dev

为什么SSD比原始NAND这么快?

来自分类Dev

为什么流浪汉这么快?

来自分类Dev

为什么重塑这么快?(剧透:写时复制)

来自分类Dev

为什么C#Array.BinarySearch这么快?

来自分类Dev

为什么`if`在语句前检查比在语句后检查这么快?

来自分类Dev

为什么像操作员这么快

来自分类Dev

为什么在C#中我的计算比Python这么快

来自分类Dev

为什么Eigens mean()方法比sum()这么快?

来自分类Dev

F#:为什么Array.createZero这么快?

来自分类Dev

为什么“范围为(1000000000000000(1000000000000001))”?Python 3这么快?

来自分类Dev

为什么Clang这么快分配std :: complex?

来自分类Dev

为什么RSSurfaceView类被弃用这么快?

来自分类Dev

F#:为什么Array.createZero这么快?

来自分类Dev

为什么像操作员这么快

来自分类Dev

为什么Ext4磁盘检查比NTFS这么快?

来自分类Dev

为什么使用HTTPS over HTTP时HttpClient这么快?

来自分类Dev

为什么磁盘上的空间这么快用完?

来自分类Dev

为什么搜索空字符串这么快?

来自分类Dev

终端中的“定位”命令。为什么这么快?

来自分类Dev

为什么这个Jquery / JavasScript这么慢?

Related 相关文章

热门标签

归档