Mehrstufige Filterung und Aggregation von Daten mit Hilfe von Funktionen höherer Ordnung

JavaScript Hard functions

Aufgabe «Mehrstufige Filterung und Aggregation von Daten mit Hilfe von Funktionen höherer Ordnung»

Schreiben Sie eine Funktion `processData`, die ein Array von Objekten (jedes Objekt enthält die Felder `category`, `value`, `active`) und zwei ganze Zahlen `minValue` und `maxValue` entgegennimmt. Die Funktion soll die Objekte filtern, bei denen `active === true` und `value` im Bereich [minValue, maxValue] (inklusive) liegt, sie dann nach `category` gruppieren, für jede Gruppe das arithmetische Mittel von `value` berechnen (mit Rundung auf zwei Nachkommastellen) und die Gruppen absteigend nach dem Mittelwert sortieren. Geben Sie ein Array von Zeichenketten im Format „category: average“ zurück.

Eingabeformat

Eine Zeichenkette mit einem JSON-Array von Objekten, dann zwei ganze Zahlen (minValue und maxValue) durch ein Leerzeichen getrennt.

Ausgabeformat

Ein Array von Zeichenketten, jede Zeichenkette im Format „category: average“ (ohne überflüssige Leerzeichen). Wenn es keine passenden Objekte gibt, geben Sie ein leeres Array [] zurück.

Beispiele

Beispiel 1

EINGABE
123
AUSGABE
main.js