使用jQuery 移除DOM中的一个元素数组有以下两种方式:
var collection = [...]; // An array of jQuery DOM objects
// Using jQuery iteration
$(collection).each(function(index, element) { element.remove(); });
// Or as pointed out by Barmar
$(collection).remove();
// Using native iteration
collection.forEach(function(element) { element.remove(); });
操作上有实际区别吗?我认为,除非浏览器的解释器/编译器足够聪明,否则使用前一种方法可能会产生额外的不必要开销,虽然如果数组很小,这种情况可能是微不足道的。
collection.forEach(function(element) {element.parentNode.removeChild(element);})
是更公平的比较。 - Niet the Dark Absol$(selector).each()
调用函数时使用元素作为参数,而不是 jQuery 对象。 - Barmar$.each(array, function...)
,而不是$(array).each(function...)
。 - Barmar$()
进行包装。 - charlietfl