ich eine Liste von JSON-Objekte in Javascript, haben wie folgt aussieht:Restructuring JSON mit JavaScript durch spezifische Regeln
[{"model":"alpha", "ports":4},
{"model":"beta", "ports":4},
{"model":"beta", "ports":1},
{"model":"beta", "ports":43},
{"model":"gamma", "ports":66},
{"model":"omega", "ports":6},
{"model":"omega", "ports":1}]
Jetzt muss ich alle Linien herauszufinden, welche die gleiche model
Wert haben, dann fügen Sie ein include
Schlüssel zum ersten Element, in dem schließlich der Wert des include
Schlüssels eine Liste der übrigen "gleichen Modell" -Linien sein soll.
Ausgabe sollte wie folgt sein:
[{"model":"alpha", "ports":4},
{"model":"beta", "ports":4, "include":[
{"model":"beta", "ports":1},
{"model":"beta", "ports":43}]},
{"model":"gamma", "ports":66},
{"model":"omega", "ports":6, "include":[
{"model":"omega", "ports":1}]}]
Wer mir eine Richtung, wie dies zu erreichen geben könnte?
Ist JSON bestellt? Wenn ja, müssen Sie es nur lesen und die Include-Werte erstellen, wenn das vorherige als das gleiche Modell wie das aktuelle (in der Schleife) – AxelH
@AxelH Ja, für jetzt ist es, aber ich kann nicht garantieren, dass es immer sein wird geordnet, weil es nicht selbst generiert wird, sondern von einer API zurückgegeben wird. Also ich möchte eine robuste Lösung. – wangx1ng
lodash ist eine einfache Option für solche Sachen. Siehe e, g, https://lodash.com/docs#groupBy – georg