有人可以解釋爲什麼常規追加到循環比AppendTo更好嗎?Jquery - AppendTo AppendTo
//Using Regular Append
var ul = $("<ul></ul>");
$("#myDiv").empty().append(ul)
$.each(movies, function (count, item) {
var id = 'li_' + count;
ul.append('<li id=' + id + '>' + item + '</li>');
$('#' + id).click(function() { });
});
//Using AppendTo
var div = $("#myDiv").empty(),
ul = $("<ul></ul>").appendTo(div);
$.each(movies, function (count, item) {
$('<li>' + item + '</li>').click(function() { }).appendTo(ul);
});
結果 http://jsperf.com/sdp-jquery-append/3
添加了一些更快的選項:http://jsperf.com/sdp-jquery-append/4 – techfoobar 2013-05-02 09:04:11
只是一個旁註:當你使用'append'時,你追加一個字符串。當你使用'appendTo'時,你正在附加一個jQuery對象。 'append'仍然稍微快一點,但是當使用'append'和一個jQuery對象時,性能差異要小得多(http://jsperf.com/sdp-jquery-append/6)。我猜想在使用'appendTo'作爲首先創建對象時,會有一些額外的開銷,然後調用該對象上的方法,而不是選擇一個緩存對象,並追加到它。 – billyonecan 2013-05-02 09:40:40