Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 查找包含稍微不同对象的两个数组的交点_Javascript_Arrays - Fatal编程技术网

Javascript 查找包含稍微不同对象的两个数组的交点

Javascript 查找包含稍微不同对象的两个数组的交点,javascript,arrays,Javascript,Arrays,我试图从两个不同的数组中找到交点,它们包含稍微不同的对象 例如: 常数arr1=[ { 电话:1234, 识别号码:34782, 名字:约翰, 姓:史密斯, 电邮:test1@test.com, }, { 电话:1232, 识别号码:34783, 名字:乍得, 姓:贝克, 电邮:test2@test.com, } ]; 常数arr2=[ { uuid:0123, 名字:约翰, 姓:史密斯, 职务:主任 }, { uuid:0125, 名字:山姆, 姓:赫斯特, 职务:经理 }

我试图从两个不同的数组中找到交点,它们包含稍微不同的对象

例如:

常数arr1=[ { 电话:1234, 识别号码:34782, 名字:约翰, 姓:史密斯, 电邮:test1@test.com, }, { 电话:1232, 识别号码:34783, 名字:乍得, 姓:贝克, 电邮:test2@test.com, } ]; 常数arr2=[ { uuid:0123, 名字:约翰, 姓:史密斯, 职务:主任 }, { uuid:0125, 名字:山姆, 姓:赫斯特, 职务:经理 } ] 常量arr3=arr1.filterobject=>arr2.includeObject;
console.logarr3 试着这样做:

常数arr1=[{ 电话:1234, 识别号码:34782, 名字:约翰, 姓:史密斯, 电邮:test1@test.com, }, { 电话:1232, 识别号码:34783, 名字:乍得, 姓:贝克, 电邮:test2@test.com, } ]; 常数arr2=[{ uuid:0123, 名字:约翰, 姓:史密斯, 职务:主任 }, { uuid:0125, 名字:山姆, 姓:赫斯特, 职务:经理 } ] 常量arr3=arr1.filtervalue=> arr2.somevalue2=> value.firstName===value2.firstName&&value.lastName===value2.lastName ;
console.logarr3 我想你可以试试这个:

arr1.filter(item1 => (arr2.find(item2 => (item2.firstName == item1.firstName && item2.lastName == item1.lastName)) != undefined));
它使用arr2.find函数检查它是否包含具有相同firstName和lastName属性的某些项。

可能存在重复项