使用JQuery过滤重复的数组条目

时间:2010-04-26 23:46:10

标签: jquery

如何在将条目附加到DOM节点(#list)之前过滤两个数组的重复项?

(function($) { 
    $(document).ready(function() { 
        var item_category1 = $('li.category1').get(); 
        var item_category2 = $('li.category2').get(); 
        $('#list') 
            .append( $(item_category1).clone() ) 
            .append( $(item_category2).clone() ); 
    }); 
})(jQuery); 

2 个答案:

答案 0 :(得分:3)

jQuery有一个名为$.unique()的实用程序,应该适合你。

http://api.jquery.com/jQuery.unique/


修改

正如其他人所说,如果您不需要单独与他们互动,您可以在一次通话中获得全部内容。

如果你确实需要先对这两组进行一些单独的工作,你也可以在完成时将一组添加到另一组。

var item_category1 = $('li.category1'); 
var item_category2 = $('li.category2');
    // Do what you need
var categories = item_category1.add(item_category2);
$('#list').append( categories.clone() ); ​

生成的集合不会重复。

http://jsfiddle.net/2zXxK/1/

得爱jsFiddle。

答案 1 :(得分:0)

你可以这样做:

$('li.category1, li.category2').clone().appendTo('#list');