2个数组,相同数据合并后不同数据合并(删除指定

588 ℃

1、删除指定索引

function Arrdel(a1, a2) {
  let arr = [];
  a2.forEach(item => {
	a1.splice(item, 1)
  })
  //过滤
  arr = a1.filter(item => item);
  return arr;
}

2、拿到相同数组和不同数组

let arr1 = [{examNo:1231,name:'中国',age:20},{examNo:3211,name:'美国',age:20}]
let arr2 = [{examNo:1231,sex:'男',fam:2},{examNo:'',sex:'女',fam:21}]
let appointmentListArr1 = [];
let appointmentListArr2 = [];
for (let i = 0; i < arr1.length; i++) {
	for (let j = 0; j < arr2.length; j++) {
	  if (arr1[i].examNo === arr2[j].examNo) {
		//获取相同数组
		appointmentListArr1.push(arr1[i]);
		appointmentListArr2.push(arr2[j]);
		//删除相同数组
		this.Arrdel(arr1, [i])
		this.Arrdel(arr2, [j])
	  }
	}
}

3、相同数组合并

const appointmentListArr = appointmentListArr1.map((item, index) => {
	return { ...item, ...appointmentListArr2[index] };
});

4、不同数组合并

const appointmentListArr3 =  arr1.map((item, index) => {
	return { ...item, ...arr2[index] };
});

5、总合并

const appointmentListArrList = appointmentListArr.concat(appointmentListArr3)

6、结果

console.log('结果',appointmentListArrList)
[
    {
        "examNo": 1231,
        "name": "中国",
        "age": 20,
        "sex": "男",
        "fam": 2
    },
    {
        "examNo": "",
        "name": "美国",
        "age": 20,
        "sex": "女",
        "fam": 21
    }
]

js根据相同key合并生成子数组children(兼容ie10)

javascript根据相同id合并形成child子数组(支持低版本浏览器)

js数组里的对象相同key合并,其余多个相同key值相加

nodejs文件的分片与合并上传介绍

php合并两个数组后如何排序

标签: 合并

上面是“2个数组,相同数据合并后不同数据合并(删除指定”的全面内容,想了解更多关于 vuejs 内容,请继续关注web建站教程。

当前网址:https://m.ipkd.cn/webs_121.html

声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

jquery如何实现无限弹框效果
帝国CMS内容页获取图集图片数量代码
vue如何利用flex布局实现TV端城市列表
详解DeDeCMS织梦手机版网站首页如何更新
帝国cms 电影在内容页和列表页调用真实地址的方