Ausgabe
Angesichts des folgenden JSON:
{
"identifers": {
"_id": "f073895e207c3157",
"attrsDigest": "-706912700",
"entityTypes": [
{
"_id": "bacf9e903a6c5def",
"attrsDigest": "1537152651"
},
{
"_id": "08aac63dacd579c8",
"attrsDigest": "-1461027456"
}
],
"statuses": [
{
"_id": "50912252d4781056",
"attrsDigest": "154590869"
}
]
}
}
Folgendes muss ich produzieren:
{
"identifers": [
{
"_id": "f073895e207c3157",
"attrsDigest": "-706912700"
},
{
"_id": "bacf9e903a6c5def",
"attrsDigest": "1537152651"
},
{
"_id": "08aac63dacd579c8",
"attrsDigest": "-1461027456"
},
{
"_id": "50912252d4781056",
"attrsDigest": "154590869"
}
]
}
Ich habe folgendes:
[**].${ "identifers": _id, "digest": attrsDigest }
was das produziert:
{
"identifers": [
"f073895e207c3157",
"bacf9e903a6c5def",
"08aac63dacd579c8",
"50912252d4781056"
],
"digest": [
"-706912700",
"1537152651",
"-1461027456",
"154590869"
]
}
Lösung
Sie können den „Reduce“-Operator verwenden , um Ihre verschachtelten Daten nach ID zu gruppieren und sie dann in ein Array der gewünschten Form zu formatieren:
**{ _id: attrsDigest }
~> $each(function($attrsDigest, $id) {
{ "_id": $id, "attrsDigest": $attrsDigest }
})
Live-Spielplatz: https://stedi.link/A1yo9Pz
Beantwortet von – mralex
Antwort geprüft von – Pedro (FixError Volunteer)