【发布时间】:2020-09-15 08:42:02
【问题描述】:
我有两个对象数组。
const firstObj = [
{ Id: "1", Name: "Peter" },
{ Id: "2", Name: "John" },
{ Id: "12", Name: "jessy" },
];
const secondObj = [
{ Id: "1", Name: "Roa", original: { Id: "1" } },
{ Id: "2", Name: "John2", original: { Id: "2" } },
{ Id: "5", Name: "Rachel", original: { Id: "3" } },
];
这里,我尝试根据Id过滤数据,返回过滤后的firstObj
所以,这里 firstObj 有一个条目 { Id: "12", Name: "jessy" } 这个对象的 Id 与 secondObj.original.Id 不匹配所以,firstObj 将得到给定的结果。
我尝试的是
firstObj.filter(
firstObj,
secondObj.map((second) => {
return firstObj.Id === second.original.Id;
}),
);
但这不起作用。任何人都可以在这里帮助我,使用 Lodash 或 Js 过滤器。
output would be -> [{"Id": "3", "Name": "jessy"}]
【问题讨论】:
-
您能否举例说明这些输入的输出应该是什么?
-
Array.prototype.filter()不是这样工作的 -
@cbr 我已经更新了问题请检查
-
为什么是预期的输出?为什么是
"jessy"而不是不同的对象? -
@Andreas 我的错,我刚刚更新了问题,请检查
标签: javascript reactjs lodash