在vue项目中如何筛选出三个数组对象中相同的项

[
        {
          title: "哈哈",
          arr: [
            {
              value: "baidu",
              label: false
            },
            {
              value: "tengxun",
              label: false
            },
            {
              value: "Summit",
              label: false
            },
          ]
        },
        {
          title: "嘿嘿",
          arr: [
             {
              value: "baidu",
              label: false
            },
          ]
        },
        {
          title: "嘻嘻",
          arr: [
             {
              value: "baidu",
              label: false
            },
            {
              value: "taobao",
              label: false
            },
          ]
        }
      ]

筛选出这三个数组对象中的相同的项或者不同的项也可以
期望的结果是新数组包含三个项共有的,就这个问题而言就是

 {
              value: "baidu",
              label: false
            },

这个就是共有的项目,如何用js实现?求大神

阅读 4.4k
1 个回答
//被筛选数组为currentArr
const sameArr = currentArr[0].arr.filter(v=> {
    return currentArr[1].arr.filter(v1 => JSON.stringify(v) == JSON.stringify(v1)).length>0 && currentArr[2].arr.filter(v2 => JSON.stringify(v) == JSON.stringify(v2)).length>0
})
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题