Expanda o Array.prototype com um método que agrupa os elementos do array por uma chave calculada por uma função passada, e retorna um objeto onde cada chave corresponde a um array de elementos. Explique o que acontecerá se a função de cálculo da chave retornar algo que não seja uma string ou um número.