【发布时间】:2018-11-23 00:17:46
【问题描述】:
我是 JavaScript 编程新手,我有两个具有以下结构的对象数组:
myFirstObjArray = [{foo: 1, bar: 1}, {foo: 3, bar: 3}, {foo: 4, bar: 5}];
mySecondObjArray = [{foo: 2}, {foo: 4}, {foo: 5}];
我需要获取两个单独的数组,其中包含键 foo 的值,第一个数组包含第一个数组中的数组,但第二个数组中的数组基于键 foo 的值,第二个数组包含在mySecondObjArray 中,但不在myFirstObjArray 中。
有没有办法做到这一点
for(i=0;i<myFirstObjArray.length;i++)
for(j=0;j<mySecondObjArray .length;j++)
{...build first array here}
for(i=0;i<mySecondObjArray .length;i++)
for(j=0;j<myFirstObjArray.length;j++)
{...build second array here}
?可能我的问题是我没找到的重复问题,所以请温柔。
预期输出:
firstArray = [{foo: 1}, {foo: 3}];
secondArray = [{foo: 2}, {foo: 5}];
【问题讨论】:
-
在此处添加您的预期输出
-
@GeorgeBailey 更新了我的问题
-
@Dana:我在 ES5 中添加了答案以支持包括 IE 在内的所有浏览器
-
在大多数语言中,这被称为“数组差异”。
标签: javascript arrays javascript-objects