我有以下形式的Javascript合并
"myData": [{
"items": [{
"attr1": "someInfoBatch1",
"attr2": "someOtherInfoBatch1"
}],
"someStates": [ "STATE_PASS_1" ]
},{
"items": [{
"attr1": "someInfoBatch2",
"attr2": "someOtherInfoBatch2"
}],
"someStates": [ "STATE_PASS_1", "STATE_FAILED_1" ]
}]
现在我想基于值someStates
所以合并myData.items
数组的myData如果someStates包含通在一个批次&其他失败一批(即说STATE_FAILED_1
),我想myData.items
是独立的(即myData.item[0]
& myData.item[1]
)
但是让我们假设在上面的例子中someStates只包含如下的传递状态;对于第一批"someStates":["STATE_PASS_1"]
&为第二批"someStates":["STATE_PASS_1", "STATE_PASS_2"]
在上述情况下,我需要myData.items合并成如下面的单个阵列;
"items": [{
"attr1": "someInfoBatch1",
"attr2": "someOtherInfoBatch1"
},{
"attr1": "someInfoBatch2",
"attr2": "someOtherInfoBatch2"
}]
不知道这两行究竟是如何在你的例子不同。为了遵循你的描述:一般来说,只需编写你自己的myData映射器,用'.some((statePassFlag)=> {/^STATE_FAILED/.test(statePassFlag)})检查每个后续对象'someStates'值' – raina77ow
但是可以合并2个数组吗? – testndtv
当然:'[] .push.apply(onearr,anotherarr)''。但是你在这里展示的不是_merge_本身。 – raina77ow