javascript - Angular - 返回不工作对象的差异

标签 javascript arrays angularjs

如何返回两个对象的差异?

$scope.a = [
   {name: "Lunchmeat"},
   {name: "Apple"},
   {name: "Bread"},
   {name: "Milk"},
   {name: "Mustard"},
   {name: "Cheese"}
];
$scope.b = [
   {name: "Bread"},
   {name: "Milk"},
   {name: "Mustard"},
   {name: "Cheese"}
]; 

$.grep($scope.a, function (el) {
        if ($.inArray($scope.b,el) == -1) console.log(el);//not working
  });

我正在寻找的输出是Object [{name: "Lunchmeat"},{name: "Apple"}],因为这就是区别。

有人可以帮忙吗?

最佳答案

我正在使用underscore.js库及其功能区别:

"difference_.difference(array, *others) Similar to without, but returns the values from array that are not present in the other arrays.

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

在你的情况下,它是:

$scope.someVar =_.difference($scope.a,$scope.b);

关于javascript - Angular - 返回不工作对象的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32009701/

相关文章:

javascript - 查询选择器具有父id和子类混合的元素

C# Get 访问器不可访问

javascript - 从下拉列表中选择时如何获取日期对象

angularjs - 如果我正在运行 grunt 本地服务器,Soundcloud redirect_uri 应该是什么?

Javascript/CSS 下拉菜单不起作用

javascript - console.log 打印函数定义以及函数预期输出

javascript - 外部 Javascript - 函数未定义时?

java:将数据保存到数组中

java - 按字母顺序排序数组列表时遇到问题

asynchronous - Trigger.io + Angular.js 并在调用 forge.ajax 后更新 View