Реализуйте метод groupBy

// Реализуйте метод groupBy, который расширяет стандартные методы массива
// Метод должен возвращать группированную версию массива в виде объекта
// Каждый ключ - это результат выполнения функции fn(arr[i])
// Каждое значение - это массив, содержащий все элементы из исходного массива с этим ключом

// Пример 1
const array1 = [
    { id: 1 },
    { id: 1 },
    { id: 2 }
];

const fn = (item) => item.id;

array1.groupBy(fn);

// Результат:
// {
//     1: [{ id: 1 }, { id: 1 }],
//     2: [{ id: 2 }]
// }

// Пример 2:
const array2 = [1, 2, 3];
array2.groupBy(String); // { "1": [1], "2": [2], "3": [3] }

// Пример 3:
const array3 = [3.3, 0.5, 1.4];
array3.groupBy(Math.round);
// {
//    3: [3.3],
//    1: [0.5, 1.4]
// }

function groupBy(func){}

Оставьте комментарий