Ich verwende AngularJS zusammenfassen und ein JSON-Objekt aus einer API-Antwort haben, die wie folgt aussieht:Gruppe und json Daten auf neues JSON-Objekt
var data = [
{"group": "red", "state": "running"},
{"group": "red", "state": "closed"},
{"group": "red", "state": "closed"},
{"group": "blue", "state": "running"},
{"group": "blue", "state": "running"}
];
ich dieses Objekt in einer JavaScript-Funktion analysieren möchte erhalten folgendes Ergebnis:
var sumdata = [
{"group": "red", "running": 1, "closed": 2, "summary": 3},
{"group": "blue", "running": 2, "closed": 0, "summary": 2}
];
Also, ich habe die erste Eigenschaft namens „Gruppe“, dann zählen, wie viele Objekte in dieser Gruppe zu Gruppe in fahrbereitem Zustand befinden, geschlossen Zustand und auch die Anzahl der Objekte zusammenfassen.
(Anmerkung: Ich würde keine zusätzlichen Javascript-Bibliotheken verwenden möchten wie LINQ.js )
Könnte yo mir bitte helfen?
habe ich versucht, die folgende, die durch die Gruppe fehlt und habe keine Ahnung, wie das in diese Funktion zu setzen:
var getSum = function (data) {
if (!data) {
$scope.data = [];
}
else {
for (var i = 0; i < data.length; i++) {
var group = data[i][0];
var status = data[i][1];
status = (status ? status.Name : "").toUpperCase();
var running = 0;
var closed = 0;
switch (status) {
case "RUNNING":
running++;
break;
case "CLOSED":
closed++;
break;
default:
break;
}
var summary = running + closed;
$scope.dataSum.push({ "group": group, "running": running, "closed": closed, "summary": summary});
}
}
};
Was haben Sie versucht? Veröffentlichen Sie den Code, den Sie bisher verwendet haben. Dies ist in der Regel kein "Wir schreiben Code für Sie" -Service – Draken
Menschen verwechseln SO für einen kostenlosen Code-Service ... kein Kommentar – thegio