【发布时间】:2019-05-13 18:07:09
【问题描述】:
我有两个对象数组。在第二个数组中,您可以从第一个数组中分配一个 id。如果第一个数组的 id 未在 array2 中关联,我如何过滤第一个数组以仅显示结果?我已经在 lodash 中尝试了一个过滤器的嵌套过滤器,以及一个 find 的过滤器,但它只是不起作用。
这是我尝试过的:
array1.filter(item => item.id === find(array2, { associatedID: item.id })[0].associatedID) 在过滤器中查找的第二次迭代。我尝试了类似的过滤方法而不是 find,但这也不起作用。在 find 函数中使用 item.id 是否存在问题,因为它是从父过滤器参数提供的?还是没有?
帮助?
const array1 = [{
"id": "1",
"name": "Test 1"
},
{
"id": "2",
"name": "Test 2",
}
{
"id": "3",
"name": "Test 3",
}
]
const array2 = [{
"id": "12",
"name": "Test 1",
"associatedID": "1"
},
{
"id": "22",
"name": "Test 2",
"associatedID": "2"
}
{
"id": "32",
"name": "Test 3",
}
]
【问题讨论】:
-
与其要求我们从头开始编写代码,不如分享您已经尝试过的内容。
-
请使用请求的信息更新问题,而不是将其添加为评论。
标签: javascript arrays object lodash