我想要做的是相交两个对象。在角2中相交两个对象
我想比较对象,如果它们在相同的键上有相同的值,只需将它们添加到另一个对象。
obj1 = { "Projects": [ "test" ], "Companies": [ "facebook", "google", "yahoo" ], "Locations": [ "LA", "NY" ], "Interests": [] }
obj2 = { "Projects": [ "test" ], "Companies": [ "netflix", "skype", "facebook" ], "Locations": [ "sttugart", "torino", "LA" ],
“兴趣”:[]}
结果将是:
obj3 = { "Projects": [ "test" ], "Companies": [ "facebook" ], "Locations": [ "LA" ], "Interests": [] }
我想什么是这样的:
intersect(obj1, obj2)
for(let key of obj1)
if(obj2[key] == obj1[key]) obj3[key] = obj2[key];
是的,我确实检查过其他解决方案,我没有结果。
编辑
我尝试dind't可能是工作,因为我的目标is not an array type or a string type
像合并的对象,而不是,删除重复? –
你也可以这样做......删除某个特定值至少出现x个值的实例 x是您正在比较的对象的数量,您可以确保该特定值存在于所有对象中(假设每个对象只包含该值的一个值) –
https://lodash.com/docs/4.16.2#intersection 我完全建议使用这样的函数,因为它们证明更有效 –