js 合并两个数组对象

项目背景是合并a = [{name:'dede'},{name:'jenny'}],  b = [{age:18},{age:19}]  合并成[{name:'dede',age:18},{name:'jenny',age:19}],

思路是遍历其中一个数组,将这个数组中的属性值push到另一个数组中,,,遍历用了map 和 forEach的方法,截图如下:

 

 

这种情况一般是两个数组等长的情况(项目背景也是这样的),后续考虑封装一个函数,

简单封装来一个函数,

//a,b为数组,需要将b数组里面的属性合并到a里面 attrName 为要合并的属性名称
function merge(a,b,attrName){
let attr = attrName
b.map((value,index)=>{
//数组b 长度大于a的长度时,需要判断
if(a[index] !== undefined){
a[index][attr] = value[attr]
} else{
return
}
})
return a
}
var a = [{name:'dede'},{name:'jeen'}]
var b = [{age:'18'},{age:'19'},{age:'20'}]
var c = 'age'
merge(a,b,c)
console.log(a)

截图:

 

简单封装,业务需求的边界值情况等特殊情况没有考虑。

转载于:https://www.cnblogs.com/keleyz/p/10118648.html

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值