运维开发网

6,JS,匹配两个数组对象的方式

运维开发网 https://www.qedev.com 2022-04-19 15:10 出处:网络
这篇文章主要介绍了es6?js?匹配两个数组对象的方法,实例代码介绍了判断两个数组用的value是否相等,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以

这篇文章主要介绍了es6?js?匹配两个数组对象的方法,实例代码介绍了判断两个数组用的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 lt; this.selectData.length; i++) { let obj = this.selectData[i] for (let j = 0; j lt; this.list.length; j++) { let aj = this.list[j] if (obj.value === aj.value) { result.push(aj) break } } } console.log("result", result)

方法2

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

方法3

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


关于用es6js匹配两个数组对象的方法的文章到此为止。关于数组对象与es6js匹配的更多信息,请搜索源搜网之前的文章或者继续浏览下面的相关文章。希望大家以后能多支持源搜网!


0

精彩评论

暂无评论...
验证码 换一张
取 消