Filtrage et agrégation multi-niveaux de données à l’aide de fonctions d’ordre supérieur

JavaScript Hard functions

Tâche «Filtrage et agrégation multi-niveaux de données à l’aide de fonctions d’ordre supérieur»

Écrivez une fonction `processData` qui prend un tableau d’objets (chaque objet contient les champs `category`, `value`, `active`), et deux entiers `minValue` et `maxValue`. La fonction doit filtrer les objets pour lesquels `active === true` et `value` se trouve dans l’intervalle [minValue, maxValue] (inclus), puis les regrouper par `category`, calculer pour chaque groupe la moyenne arithmétique de `value` (arrondie à deux décimales) et trier les groupes par ordre décroissant de la moyenne. Retourner un tableau de chaînes de la forme "category: average".

Format d\ entrée

Une chaîne contenant un tableau JSON d’objets, puis deux entiers (minValue et maxValue) séparés par un espace.

Format de sortie

Un tableau de chaînes, chaque chaîne au format "category: average" (sans espaces superflus). S’il n’y a aucun objet correspondant, retourner un tableau vide [].

Exemples

Exemple 1

ENTRÉE
123
SORTIE
main.js