我有两个数组:
var a = new Array(1,2,3,4);
var b = new Array(5,3,2,6);
我想找出哪些元素在
a
数组中,但不在数组b
中,哪些元素在b
中,但不在a
中?我知道一种方法是遍历它们,但是有没有更有效的方法?
感谢您的时间。
最佳答案
您可以尝试以下方法:
var aNotInB = $.grep(a, function($e) { return $.inArray($e, b) == -1; });
var bNotInA = $.grep(b, function($e) { return $.inArray($e, a) == -1; });
您可以将其定义为jquery函数:
$.disjoin = function(a, b) {
return $.grep(a, function($e) { return $.inArray($e, b) == -1; });
};
var aNotInB = $.disjoin(a,b);
var bNotInA = $.disjoin(b,a);