【发布时间】:2016-08-17 10:14:42
【问题描述】:
我有两个不同的对象数组。我必须以嵌套方式合并两个对象数组。
var array1=[{ PersonalID: '11', qusetionNumber: '1', value: 'Something' },
{ PersonalID: '12', qusetionNumber: '2', value: 'whatever' },
{ PersonalID: '13', qusetionNumber: '3', value: 'anything' },
{ PersonalID: '14', qusetionNumber: '4', value: 'null' }];
var array2=[{ qusetionNumber: '2', chID: '111', cValue: 'red' },
{ qusetionNumber: '2', chID: '112', cValue: 'green'},
{ qusetionNumber: '2', chID: '113', cValue: 'blue' },
{qusetionNumber: '3', choiceID: '114', cValue: 'yellow'},
{qusetionNumber: '4', choiceID: '115', cValue: 'red'}];
输出应该是这种格式 那么如何使用循环或下划线来制作呢? 输出
personalID:[{
personalID:11,
qusetionNumber:1,
value: 'Something'
},
{
personalID:12,
qusetionNumber:2,
value: 'whatever',
choice:[
{ qusetionNumber: '2', chID: '111', cValue: 'red' },
{ qusetionNumber: '2', chID: '112', cValue: 'green'},
{ qusetionNumber: '2', chID: '113', cValue: 'blue' }
]
},
{
personalID:13,
qusetionNumber:3,
value: 'anything',
choice:[
{ qusetionNumber: '3', chID: '114', cValue: 'yellow' }
]
},
{
personalID:14,
qusetionNumber:4,
value: 'null',
choice:[
{ qusetionNumber: '4', chID: '115', cValue: 'red' }
]
}]
【问题讨论】:
-
我尝试过使用 forloop 但我没有得到正确的结果
-
groupBy在 array2 上,然后是map在 array1 上 -
你能分享一下你的代码吗?
标签: javascript node.js javascript-objects