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
}
]
以上是编程学习网小编为您介绍的“2个数组,相同数据合并后不同数据合并(删除指定”的全面内容,想了解更多关于 vuejs 内容,请继续关注编程基础学习网。
织梦狗教程
本文标题为:2个数组,相同数据合并后不同数据合并(删除指定


基础教程推荐
猜你喜欢
- 关于ajax的使用方法_例题、ajax的数据处理 2023-02-01
- 在vue项目中利用popstate处理页面返回的操作介绍 2024-02-12
- 使用css实现全兼容tooltip提示框 2023-12-12
- CSS清除浮动 clearfix:after 使用技巧及兼容Firefox等符合W3C标准的浏览器 2024-01-25
- Js动态创建div 2023-12-01
- 详解px单位html5响应式方案 2022-09-16
- VuePress 2023-10-08
- CSS制造:鼠标移上去显示大图 2022-11-06
- CSS自定义绿色复选框按钮样式 2024-02-05
- Flutter Tab 切换时保留tab的状态 2022-09-08