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个数组,相同数据合并后不同数据合并(删除指定
基础教程推荐
猜你喜欢
- CSS未知高度垂直居中的实现 2023-12-21
- 网页设计中的CSS Sprites技术介绍及其优化方法 2024-03-10
- Ajax+php数据交互并且局部刷新页面的实现详解 2023-02-14
- 原生js开发的日历插件 2024-01-03
- 自己写一个uniapp全局弹窗(APP端) 2024-01-07
- vuejs用window.open打开base64图片 2024-12-08
- 详解移动端实现内滚动的四种解决方案 2024-04-03
- Ajax 动态载入html页面后不能执行其中的js快速解决方法 2023-02-15
- iframe子页面与父页面在同域或不同域下的js通信 2024-02-07
- layui从数据库中获取复选框的值并默认选中方法 2024-11-22