js数组对象进行合并以及对象进行替换

两个不同数组中的对象进行合并,最终合并成一个数组,并且属性名也放在同一个对象里面

var obj1 = [{
  "id": 1,
}, {
  "id": 2,
}];
var obj2 = [{
  "width": "10"
}, {
  "height": "2"
}];

var obj = obj1.map((item,index) => {
    return {...item, ...obj2[index]};
});

在这里插入图片描述

数组中,用另外一个对象替换当前数组中任意一个对象

var obj =[
  {id:1,width:'10'},
  {id:2,width:'1'},
  {id:3,width:'100'}
]

var newObj = {id:3,width:'99'};

for(let i=0;i<obj.length;i++){
  if(obj[i].id === newObj.id){
    obj[i] = newObj
  }
}

在这里插入图片描述
特别注意,如果你是用vue的话,可能会导致数组更新,页面不及时渲染,得这样写

把 obj[i] = newObj换成

this.$set(obj,i,newObj)

猜你喜欢

转载自blog.csdn.net/weixin_45389051/article/details/110450909