js 多个数组中找出相同的元素

方法一:

const arr1 = [1, 2, 3, 5, 6, 7, 0];
const arr2 = [1, 2, 3, 8, 9, 0];
const arr3 = [1, 2, 3, 0];
const arr = [];
arr3.forEach(item => {
    if(arr1.includes(item) && arr2.includes(item)){
        arr.push(item);
    }
})
console.log(arr);

方法二:(性能优)

const arr1 = [1, 2, 3, 5, 6, 7, 0];
const arr2 = [1, 2, 3, 8, 9, 0, 5];
const arr3 = [1, 2, 3, 0, 5];
const arr = arr3.reduce((pre, cur)=> {
    if(arr1.includes(cur) && arr2.includes(cur)){
        pre.push(cur);
    }
    return pre;
}, [])
console.log(arr);
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
找出两个对象数组中id不同的元素,可以使用JavaScript的一些内置方法和循环来实现。 首先,假设我们有两个对象数组arr1和arr2,每个数组包含多个对象,每个对象有一个id属性。 我们可以使用循环遍历arr1中的每个对象,并用每个对象的id属性与arr2中的每个对象的id属性进行比较。如果找到一个id不同的对象,则将该对象添加到一个新的数组中。 具体步骤如下: 1. 创建一个新的空数组,用于存放id不同的元素。 2. 使用forEach()方法遍历arr1中的每个对象。 3. 在forEach()方法的回调函数中,使用find()方法在arr2中查找具有相同id的对象。 4. 如果find()方法返回undefined,则表示在arr2中未找到相同id的对象,将当前对象添加到新的数组中。 5. 最后,返回新的数组,其中包含id不同的元素。 以下是用代码实现上述步骤的例子: ```javascript function findDifferentElements(arr1, arr2) { let differentElements = []; arr1.forEach((obj1) => { const isDifferent = !arr2.find((obj2) => obj2.id === obj1.id); if (isDifferent) { differentElements.push(obj1); } }); return differentElements; } ``` 这样,调用`findDifferentElements(arr1, arr2)`将返回一个包含id不同的元素数组。 请注意,以上代码假设arr1和arr2中的每个对象包含一个id属性,且具有相同的属性名称。如果属性名称不同,需要相应地修改代码中的比较条件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值