Главная Категории Контакты Поиск

Функция используемая для получения частоты повторяющихся элементов массива

Как получить объект с уникальными значениями массива в качестве ключей и их частотами в качестве значений.

JavaScript ·19.02.2020·читать 1 мин 🤓·Автор: Alex Myzgin

Функция frequencies возвращает объект с уникальными значениями массива в качестве ключей и их частотами в качестве значений.

Используем Array.prototype.reduce() для сопоставления уникальных значений с ключами объекта, добавляя их к существующим ключам каждый раз, когда встречается одно и то же значение.

Если передан не массив, то вернется null.

const frequencies = arr =>
  Array.isArray(arr)
    ? arr.reduce((aсс, v) => {
        aсс[v] = aсс[v] ? aсс[v] + 1 : 1;
        return aсс;
      }, {})
    : null;

// Пример:

frequencies(['a', 'b', 'a', 'c', 'a', 'a', 'b', 'b', 'c', 'z']);
// {a: 4, b: 3, c: 2, z: 1}

Website, name & logo
Copyright © 2019. Alex Myzgin