JQuery $ .Each()函数获取重复数组

时间:2013-06-10 20:49:33

标签: jquery duplicates each

我正在尝试编写一个jquery $ .each()函数,该函数接收一个数组并将该数组中的重复项放入另一个数组中。我知道如何使用for循环来实现它,如下所示,但似乎无法在$ .each函数中找到它。任何帮助,将不胜感激。感谢。

$.duplicates = function(arr) {
    dup = [];
    for (var i = 0; i < arr.length; i++){
        for (var j = i + 1; j < arr.length; j++){
            if (arr[i] === arr[j]){
                dup.push(arr[i]);
            }
        }
    }
    return dup;
};

1 个答案:

答案 0 :(得分:0)

试试这个

$.duplicates = function (arr) {
    dup = []
    $.each(arr, function (i, val1) {
        $.each(arr, function (j, val2) {
            if (val1 === val2 && i !== j) {
                if ($.inArray(val1, dup) === -1) dup.push(val1);
            }
        });
    });
    return dup;
};

<强> Check Fiddle