JSFiddle - React, Tailwind, and code Playground

by TheCrossCarrier

JavaScript

const words = ['h', 'i', 'd', 'j', 'f', 'i', 'd', 'a', 'a', 'a']

Array.prototype.descendingSet = function() {
  const quantities = this.reduce((acc, curr) => {
    acc.set(curr, (acc.get(curr) || 0) + 1)
    return acc
  }, new Map())
  
  console.log(quantities)

  /* .sort((a, b) => {
      const ratio = b[1] - a[1]
  
      if (ratio === 0) return a[0] > b[0] ? 1 : -1
      return ratio
    })
  }
  console.dir(quantities) */
}

console.log(words.descendingSet())