js如何找出两个数组中不同的元素

 更新时间:2022年12月09日 14:06:11   作者:Agwenbi  
这篇文章主要介绍了js如何找出两个数组中不同的元素,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

js找出两个数组中不同的元素

function getNewArr(a,b){
    const arr = [...a,...b];
    const newArr = arr.filter(item => {
        return !(a.includes(item) && b.includes(item));
    });
    return newArr;
}
console.log(getNewArr(a,b));

js找出两个数组中不同元素和相同元素的几种方法

题干:

两个数组 var A = [1, 5, 6]; var B = [2, 6, 7],实现一个方法,找出仅存在于A 或者 仅 存在于B中的所有数字

找出不同元素

方法一:

// 方法一:
const filterArr = (arr1, arr2) => {
  const arr = [...arr1, ...arr2];
  const newArr = arr.filter((t) => {
    return !(arr1.includes(t) && arr2.includes(t));
  });
  return newArr;
};

方法二:

// 方法二
const filterArr2 = (arr1, arr2) => {
  // const newArr = arr1.contact(arr2);
  return arr1.concat(arr2).filter((t, i, arr) => {
    return arr.indexOf(t) === arr.lastIndexOf(t);
  });
};

方法三:

// 方法三
const arr1 = A.filter((t) => !B.includes(t));
const arr2 = B.filter((x) => !A.includes(x));
const newArr = arr1.concat(arr2);

找出相同的元素

方法一:

const filterArr = (arr1, arr2) => {
  let result = [];
  for (let i = 0; i < arr1.length; i++) {
    for (let j = 0; j < arr2.length; j++) {
      if (arr1[i] === arr2[j]) {
        result.push(arr1[i]);
      }
    }
  }
  return result;
};

方法二:

const filterArr = (arr1, arr2) => {
  return arr1.filter((t) => {
    return arr2.includes(t);
  });
};

方法三:

const filterArr = (arr1, arr2) => {
  return arr1.filter((t) => {
    return arr2.indexOf(t) !== -1;
  });
};

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 推荐几个不错的console调试技巧实现

    推荐几个不错的console调试技巧实现

    这篇文章主要介绍了推荐几个不错的console调试技巧实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • 禁止弹窗中蒙层底部页面跟随滚动的几种方法

    禁止弹窗中蒙层底部页面跟随滚动的几种方法

    我们大家在做弹出层的时候,必不可少的一个元素就是蒙层,也就是遮罩层,当弹出层滚动的时候,蒙层底部的页面一般是要求固定不动的,所以这篇文章就来给大家介绍了如何禁止弹窗中蒙层底部页面跟随滚动的几种方法,需要的朋友可以参考下。
    2017-12-12
  • 用JS实现贪吃蛇游戏

    用JS实现贪吃蛇游戏

    这篇文章主要为大家详细介绍了用JS实现贪吃蛇游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07
  • js的隐含参数(arguments,callee,caller)使用方法

    js的隐含参数(arguments,callee,caller)使用方法

    本篇文章只要是对js的隐含参数(arguments,callee,caller)使用方法进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2014-01-01
  • 删除数组条目中重复的条目(可能有多个),返回值是一个仅包含被删除的重复条目的新数组。

    删除数组条目中重复的条目(可能有多个),返回值是一个仅包含被删除的重复条目的新数组。

    删除数组条目中重复的条目(可能有多个),返回值是一个仅包含被删除的重复条目的新数组。...
    2007-09-09
  • js实现3D旋转效果

    js实现3D旋转效果

    这篇文章主要为大家详细介绍了js实现3D旋转效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-08-08
  • javascript特殊文本输入框网页特效

    javascript特殊文本输入框网页特效

    这篇文章主要为大家详细介绍了javascript特殊文本输入框网页特效,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • js实现的下拉框二级联动效果

    js实现的下拉框二级联动效果

    这篇文章主要介绍了js实现的下拉框二级联动效果,涉及JavaScript针对页面元素的遍历与节点操作相关技巧,需要的朋友可以参考下
    2016-04-04
  • uniapp时间格式和距离格式的转换

    uniapp时间格式和距离格式的转换

    这篇文章主要介绍了uniapp时间格式和距离格式的转换,第一种是把  YYYY-MM-DD hh:mm:ss 转换成 MM月DD日,第二种是把  hh:mm:ss 转换成 hh:mm,本文给大家介绍的非常详细,需要的朋友可以参考下
    2023-09-09
  • 微信小程序登录获取不到头像和昵称的详细解决办法

    微信小程序登录获取不到头像和昵称的详细解决办法

    相信好多小伙伴在使用getUserInfo获取小程序用户昵称和头像时却获取不到,下面这篇文章主要给大家介绍了关于微信小程序登录获取不到头像和昵称的详细解决办法,需要的朋友可以参考下
    2022-12-12

最新评论