Filtragem e agregação de dados em vários níveis usando funções de ordem superior
JavaScript
Hard
functions
Tarefa «Filtragem e agregação de dados em vários níveis usando funções de ordem superior»
Escreva uma função `processData` que recebe um array de objetos (cada objeto contém os campos `category`, `value`, `active`) e dois números inteiros `minValue` e `maxValue`. A função deve filtrar os objetos onde `active === true` e `value` está no intervalo [minValue, maxValue] (inclusive), em seguida, agrupá-los por `category`, para cada grupo calcular a média aritmética de `value` (com arredondamento para duas casas decimais) e ordenar os grupos em ordem decrescente da média. Retornar um array de strings no formato "category: average".
Formato de Entrada
Uma string com um array JSON de objetos, seguida por dois números inteiros (minValue e maxValue) separados por espaço.
Formato de Saída
Um array de strings, cada string no formato "category: average" (sem espaços extras). Se não houver objetos correspondentes, retornar um array vazio [].
Exemplos
Exemplo 1
ENTRADA
123
SAÍDA
main.js