碎片时间学编程「107]:返回数组中出现频率最高的元素


返回数组中出现频率最高的元素。

  • 使用Array.prototype.reduce()函数将唯一值映射到对象的键,每次遇到相同值时添加到现有键。
  • 结合使用Object.entries()结果Array.prototype.reduce()来获得数组中最频繁的值。

JavaScript

const mostFrequent = arr =>  Object.entries(    arr.reduce((a, v) => {      a[v] = a[v] ? a[v] + 1 : 1;      return a;    }, {})  ).reduce((a, v) => (v[1] >= a[1] ? v : a), [null, 0])[0];

示例

mostFrequent(['a', 'b', 'a', 'c', 'a', 'a', 'b']); // 'a'

更多内容请访问我的网站:https://www.icoderoad.com

发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章