Ich versuche, eine Tabelle mit einem Vergleich einiger Elemente anzuzeigen. Die Idee ist, in der richtigen Art und Weise (weniger auf der linken Seite und vollständigere auf der rechten Seite), wie zu sortieren:JSon nach Requisiten von Kindelementen sortieren (Vergleichstabelle)
Plan1 | Plan2 | Plan3
item1 X X X
item2 - X X
item3 - - X
Aber die API unseres Anbieters dient der json ungeordnet. Das Problem ist, dass wir mehr als 100 Elemente und fast 20 Pläne haben, so dass es unmöglich ist, auf "Hardcode" zu filtern.
Die json ist kolossal, so die einfache Version nicht mit dem Minimum (wie in diesem Beispiel) wäre:
[
{
"Id": "1",
"Name": "Item1",
"Plans": [
{
"PlanMaster": "EPTV Max",
"IdPlan": 1000,
"HasPlan": true
},
{
"PlanMaster": "EPTV",
"IdPlan": 1001,
"HasPlan": true
},
{
"PlanMaster": "Web TV",
"IdPlan": 1002,
"HasPlan": true
}
]
},
{
"Id": "2",
"Name": "Item2",
"Plans": [
{
"PlanMaster": "EPTV Max",
"IdPlan": 1000,
"HasPlan": false
},
{
"PlanMaster": "EPTV",
"IdPlan": 1001,
"HasPlan": true
},
{
"PlanMaster": "Web TV",
"IdPlan": 1002,
"HasPlan": true
}
]
},
{
"Id": "3",
"Name": "Item3",
"Plans": [
{
"PlanMaster": "EPTV Max",
"IdPlan": 1000,
"HasPlan": false
},
{
"PlanMaster": "EPTV",
"IdPlan": 1001,
"HasPlan": false
},
{
"PlanMaster": "Web TV",
"IdPlan": 1002,
"HasPlan": true
}
]
}
]
Der Punkt ist, wie kann ich durch die json navigieren paar Dinge zu fragen wie „Wie viele Pläne habe ich "," Liste Pläne in der Reihenfolge von weniger itens zu mehr ", etc ...
Wie wird diese Art von" Sortierung "/" Vergleich "Problem genannt? Ich habe versucht, Google zu sortieren, etc ... und konnte nicht viel finden. Ich möchte nur wissen, wie kann ich die Knoten in Javascript abfragen, so dass ich in der Lage wäre, die Logik zu implementieren.
prost
Sie müssen Ihren eigenen Sortieralgorithmus/Logik erstellen, der in der [.sort] gekapselt ist (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/ sort) Array-Methode, zum Beispiel. – mrlew