私のArrayです。同じIDを持つ配列のマージ
同じ_idを持つ配列、つまり86ded3fdfc5f92724491f82をマージしたいのですがどうすればいいですか? このようにして配列を作成しています。
dinnerDrug.push({
'_id': value._id,
'name': value.medicine_name,
'count': value.dose_dinner_count,
'type': value.medicine_type,
'consume': value.dose_dinner_consume,
'comment': value.medicine_comment
});
dinnerArray.push({
'_id': value.doctor_id,
'doctor_name': value.doctor_name,
'doctor_dept': 'Cardiologist',
'prescription': dinnerDrug
});
私はこの
morningArray.forEach(function(val) {
if (val._id == value.doctor_id) {
morningArray.prescription.push(morningDrug)
} else {
morningArray.push({
'_id': value.doctor_id,
'doctor_name': value.doctor_name,
'doctor_dept': 'Cardiologist',
'prescription': morningDrug
});
}
});
ようdupliateを削除しようとしましたが、重複配列ではなく、それがプッシュなどのエラーが定義されていないと言い、削除されません。私は何をしているのですか?
予想される出力は次のようにする必要があります:
{
"_id": "586ded3fdfc5f92724491f82",
"doctor_name": "asd asd",
"doctor_dept": "Cardiologist",
"prescription": [
{
"_id": "586dfdbe98c23d1a200cfb3f",
"name": "ALPHACAINE N, solution injectable à usage dentaire",
"count": "1",
"type": "0",
"consume": "0",
"comment": "test"
},
{
"_id": "586dfda498c23d1a200cfb3b",
"name": "ALPHACAINE N, solution injectable à usage dentaire",
"count": "1",
"type": "0",
"consume": "0",
"comment": "test"
}
]
}
注:私はあなたが_id
のハッシュテーブルを使用してオブジェクトをかどうかを確認できjavascriptの
と 作品これは役立つかもしれない:http://codereview.stackexchange.com/questions/60128/removing-duplicates-from-an-array-quickly – Rajesh
とき重複がないか確認してください。この行 'morningArray.prescription.push(morningDrug)'は 'val.prescription.push(morningDrug)'でなければなりません。 'morningArray'には' prescription'プロパティはありませんか? –
私はあまりにもそれを試しました.. 'val.prescription.push(morningDrug)' stilは配列を空にします –