【发布时间】:2017-03-17 13:36:45
【问题描述】:
我正在尝试获取数组值的最高出现次数,如果出现相同的情况,我应该获得相同出现次数的第一个选定值。
例子:
var array = ['25', '50', 'a', 'a', 'b', 'c']
在这种情况下,我应该得到a
var array = ['75', '100', 'a', 'b', 'b', 'a']
在这种情况下,我也应该得到a
我进行了相当多的搜索,发现了一些有用的帖子,例如:
不知何故,我似乎无法修改这些示例以适用于我的情况。
现在我正在使用下面的代码,但它返回最后一个选择的相等出现,而不是第一个。 (信用https://stackoverflow.com/users/1238344/emissary)
function mostFrequent(array){
return array.sort(function(a,b){
return array.filter(function(v){ return v===a }).length
- array.filter(function(v){ return v===b }).length
}).pop();
}
欢迎对此提供任何帮助。
【问题讨论】:
标签: javascript jquery