2017-04-15 29 views
-2

这不是一个真正的问题,它是一个解决方案,但我想发布它,因为我看到它经常出现。尽管提供改进建议。我将用结果更新我的FiddlejQuery Array Difference

使用jQuery,这比较了2个数组并输出了两者的差异。

var array1 = [1, 2, 3, 4, 5, 6]; 
 
var array2 = [1, 2, 3, 4, 5, 6, 7, 8, 9]; 
 
var foo = []; 
 
var i = 0; 
 
jQuery.grep(array2, function(el) { 
 
    if (jQuery.inArray(el, array1) == -1) foo.push(el); 
 
    i++; 
 
}); 
 
alert(" the difference is " + foo);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

+3

把问题的问题,并在答案的解决方案。 – Barmar

+0

使用'console.log'而不是'alert'。 – Barmar

+0

您可以使用'.map()'而不是'grep()' – MrNew

回答

1

图书馆Underscore.js是这样的东西非常有帮助。

http://underscorejs.org/#difference

_.difference([1, 2, 3, 4, 5], [5, 2, 10]); 
=> [1, 3, 4] 
+0

为什么在使用本机或jQuery时使用另一个库? – MrNew

+0

@MrNew绝对。这只是在那里你喜欢这个图书馆,并希望开始在你的项目中使用它:) –