判断两个数组用的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 匹配数组对象内容请搜索w3xue以前的文章或继续浏览下面的相关文章希望大家以后多多支持w3xue!