昨天看到有同事用$('xxxx').empty().append('xxxxxxx');这类方法,而本人自己用的这是$('xxxxx').html('xxxxx');作为前端码农,俺就想看看 2个写法的优劣,首先看看测试代码
$("body").html('<div></div>');
var $div = $("div");
var i = 10;
while (i--) {
var d1 = new Date().getTime();
var j = 10000;
while (j--) {
$div.empty().append('<div></div><div></div><div></div><div></div><div></div><div></div><div></div>');
}
console.log(new Date().getTime() - d1);
}
var i = 10;
while (i--) {
var d1 = new Date().getTime();
var j = 10000;
while (j--) {
$div.html('<div></div><div></div><div></div><div></div><div></div><div></div><div></div>');
}
console.log(new Date().getTime() - d1);
}
结果很明显.empty().append(),性能上略高与html();
至于原因,大家可以去俺的菜园子看看,嘿嘿,也可以来俺的群 交流交流