使用场景,要把多个表的数据杂合在一个表展示但是彼此之间没有什么关系
例子
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]
})
})
}
})