从另一个数组中删除数组的内容

时间:2013-09-25 07:28:23

标签: javascript jquery arrays

我有两个数组

var array1 = new Array ["a", "b", "c", "d", "e"];
var array2 = new Array ["a", "c", "d"];

我想从array1中删除array2的元素

结果["b", "e"]

是否有类似

的内容
array1 = array1.remove(array2)

注意我正在使用jquery-1.9.1

5 个答案:

答案 0 :(得分:8)

尝试:

var diff = $(array1).not(array2).get();

答案 1 :(得分:2)

function difference(source, toRemove) {
    return source.filter(function(value){
        return toRemove.indexOf(value) == -1;
    });
}

注意 IE9 之前无法使用Array.prototype.indexOfArray.prototype.filter

答案 2 :(得分:1)

虽然有很多方法可以通过原生java脚本实现它,但我建议看{4}}

答案 3 :(得分:1)

Underscore JS就是您的需要。该库具有许多有用的数组操作函数。 Underscore JS

答案 4 :(得分:0)

Underscore.js库有助于:Hers就是您所需要的

_.difference(array1, array2);