按降序对Javascript关联数组值进行排序
Sorting Javascript associative array values in descending order
我有以下方法,可以根据一些输入文本获取单词频率:
function getWordFrequency(lowerCaseArray) {
var wordFrequency = {};
$.each(lowerCaseArray, function(ix, word) {
// skip empty results
if (!word.length) {
return;
}
// add word to wordFrequency
if (!wordFrequency[word]) {
wordFrequency[word] = 0;
}
wordFrequency[word]++;
});
return wordFrequency;
}
然而,我想按降序返回单词的频率,即
cats => 20
dogs => 19
frog => 17
humans => 10
目前,我的算法按照输入单词的出现顺序返回。
如果要排序,必须返回一个对象数组。对象的属性没有保证的顺序。
var obj = getWordFrequency(words);
var array = Object.keys(obj).map(function(key){
return {word: key, count: obj[key]};
});
array.sort(function (a,b){ return b.count - a.count});
从我的手机上输入,未经测试,a和b的顺序可能需要反转
相关文章:
- JavaScript数组排序(函数)用于对表行进行排序,而不是排序
- 在数组的 2/3 上调用自身的排序算法
- 数组值的排序以匹配另一个数组ES6
- 按不同项目对对象数组进行排序
- 根据Javascript中的字符串值对数组的数组进行排序
- 在不同的javascript数组中对json响应进行排序
- 对对象数组中的数组进行排序
- 按特定键对对象数组进行排序
- 使用jquery根据数组对表行进行排序
- 尝试对对象数组进行排序但拼接不是一个函数
- 对javascript中某些键的对象数组进行排序
- Javascript按数字顺序排序()数组
- Javascript排序索引链接数组
- 在jquery中对时间数组进行排序
- 如何在具有相同 ID 的 Javascript 中按排序函数对关联数组进行排序
- Javascript中的多维数组排序索引问题
- 如何在mongodb中根据数组内容的差异进行排序
- 在Javascript中对具有特定异常的对象数组进行排序
- 数组数据排序类似mysql查询
- 在小于O(n)时间内找到(排序)数组中的重复元素