js如何把长度不一的对象数组横向相接

使用场景,要把多个表的数据杂合在一个表展示但是彼此之间没有什么关系

例子

let list1=[{name:1,label:1},{name:2,label:2},{name:3,label:3}]
let list2=[{name1:1,label1:1},{name1:2,label1:2}]
let list3=[{name2:1,label2:1}]

转换为

data=[
{name:1,label:1,name1:1,label1:1,name2:1,label2:1},
{name:2,label:2,name1:2,label1:2},
{name:3,label:3}
]

实现代码

let obj={list1,list2,list3}
let result=[]
result=Object.keys(obj).reduce(function(hash){
    return function(r,k){
        obj[k].forEach(function(o,index){
            if(!hash[index]){
                hash[index]={}
                r.push(hash[index])
}
        Object.keys(o).forEach(function(l){
             hash[index][l]=o[l]
})
})
}
})

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值