gpt4 book ai didi

javascript - 如何使用多个键按对象的值对对象进行排序?

转载 作者:行者123 更新时间:2023-11-28 12:13:28 25 4
gpt4 key购买 nike

I want to use the sort method explained here但我有

{
"CYLINDER": 2986,
"HYDRAULIC": 1421,
"JACKS": 84,
"INSTALLATION": 119,
"REAR": 61,
"JACK": 334,
"TUBE": 1,
"FEED": 114,
"ASSEMBLY": 326,
"DCS": 2,
"TOWER": 65,
"RAISING": 8,
"BREAKOUT": 6,
}

我创建了这个函数,将每个字符串分组在一起并添加一个计数(作为键的值,见上文)

function generateCountDuplication(wordArray) {
const countedWords = wordArray.reduce(function(allWords, word) {
if (word in allWords) {
allWords[word]++;
}
else {
allWords[word] = 1;
}
return allWords;
}, {});
return countedWords;
}

我尝试在 Stackoverflow 上进行谷歌搜索和查看,但没有找到当键不唯一时按值排序的任何位置。有什么线索可以解决吗?

我想要这样的结果:

{
"TUBE": 1,
"DCS": 2,
"BREAKOUT": 6,
"RAISING": 8,
"REAR": 61,
"TOWER": 65,
"JACKS": 84,
"FEED": 114,
"INSTALLATION": 119,
"ASSEMBLY": 326,
"JACK": 334,
"HYDRAULIC": 1421,
"CYLINDER": 2986
}

最佳答案

按如下方式取消Object.keys()map即可达到预期结果。

const list = {
"CYLINDER": 2986,
"HYDRAULIC": 1421,
"JACKS": 84,
"INSTALLATION": 119,
"REAR": 61,
"JACK": 334,
"TUBE": 1,
"FEED": 114,
"ASSEMBLY": 326,
"DCS": 2,
"TOWER": 65,
"RAISING": 8,
"BREAKOUT": 6,
};

var newList = {};
Object.keys(list).sort(function(a,b){return list[a]-list[b]})
.map(key => newList[key] = list[key]);
console.log(newList);

关于javascript - 如何使用多个键按对象的值对对象进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55520228/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com