我知道如何添加兩個jQueries一起using add()jQuery的添加()的替代性能
然而,對於一個項目我的工作,它已成爲一個性能瓶頸。我擺弄周圍安裝其他的,這使我在一個偉大的業績增長了相同的結果(〜60ms的對比1000毫秒這個小提琴)想出了:
http://jsfiddle.net/jedierikb/rkAP4/1/
var t = $("#test");
var tKids = t.children();
var j = $("#jest");
var jKids = j.children();
var z,
zMax = 30000;
var time1 = new Date();
for (z=0; z<zMax; z++)
{
var opt1 = tKids.add(jKids);
}
var time2 = new Date();
for (z=0; z<zMax; z++)
{
var i,
iMax,
allKids = [];
for(i = 0, iMax = tKids.length; i < iMax; i++)
{
allKids.push(tKids[i]);
}
for(i = 0, iMax = jKids.length; i < iMax; i++)
{
allKids.push(jKids[i]);
}
var opt2 = $(allKids);
}
var time3 = new Date();
console.log((time2-time1) + " v " + (time3-time2));
注:我不需要添加的好處,如保證DOM元素排序和刪除重複。
我想知道是否有辦法讓這個方法比我所做的迭代更清潔或更緊湊。或者也許還有更好的方法。
你可以閱讀這個你可以減少一些循環:http://www.scottlogic.co.uk/2010/10/javascript -array-performance/ –
你也可以在這裏測試你的JS性能:http://jsperf.com/jquery-add-alternative-for-performance – RASG