javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 > es6 js 匹配数组对象

es6 js 匹配两个数组对象的方法

作者:周家大小姐.

这篇文章主要介绍了es6 js 匹配两个数组对象的方法,实例代码介绍了判断两个数组用的value是否相等,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

判断两个数组用的value是否相等

  this.list = [
            {
              user_type: 0,
              user_id: 1003,
              department_id: 1,
              department_name: "公司xx",
              mobile: "",
              realname: "廖xx",
              com_name: "任公司",
              label: "廖建平",
              value: 1003
            },
            {
              user_type: 0,
              user_id: 1004,
              department_id: 1,
              department_name: "公司领导",
              mobile: "",
              realname: "贺金生",
              com_name: "任公司",
              label: "贺xx",
              value: 1004
            },
            {
              user_type: 0,
              user_id: 1005,
              department_id: 1,
              department_name: "公司领导",
              mobile: "",
              realname: "李欢",
              com_name: "任公司",
              label: "李xx",
              value: 1005
            }
          ]
 
 this.selectData = [
            {
              user_type: 0,
              user_id: 1003,
              department_id: 1,
              department_name: "公司xx",
              mobile: "",
              realname: "廖xx",
              com_name: "任公司",
              label: "廖建平",
              value: 1003
            },
            {
              user_type: 0,
              user_id: 1004,
              department_id: 1,
              department_name: "公司领导",
              mobile: "",
              realname: "贺金生",
              com_name: "任公司",
              label: "贺xx",
              value: 1004
            },
           
          ]

方法一

    let result = []
            for (let i = 0; i < this.selectData.length; i++) {
              let obj = this.selectData[i]
              for (let j = 0; j < this.list.length; j++) {
                let aj = this.list[j]
                if (obj.value === aj.value) {
                  result.push(aj)
                  break
                }
              }
            }
            console.log("result", result)

方法二

   let arr3 = this.selectData.filter(obj =>
              this.list.some(obj1 => obj.value == obj1.value)
            )
            console.info("arr3", arr3)
            this.result = arr3

方法三

  let arr4 = []
            let arr5
            this.list.filter(obj => arr4.push(obj.value))
            arr5 = this.selectData.filter(obj => arr4.indexOf(obj.value) !== -1)
 
            this.result = arr5

到此这篇关于es6 js 匹配两个数组对象的方法的文章就介绍到这了,更多相关es6 js 匹配数组对象内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文