let tags = {
"01": {
contentID: [10, 20],
occurrences: 1
},
"02": {
contentID: [10, 20],
occurrences: 1
},
"04": {
contentID: [10, 20],
occurrences: 3
},
"05": {
contentID: [10, 20],
occurrences: 6
}
};
如何通过以出现次数为基数来按降序排序,这是一个全局变量。所以我想将其存储在另一个对象中,并以降序对那个对象进行排序。
最佳答案
您不能对对象进行排序,但是可以将其转换为值数组:
Object.values(tags).sort((a, b) => b.occurrences - a.occurrences)
结果将是:
[
{
contentID: [10, 20],
occurrences: 6
},
{
contentID: [10, 20],
occurrences: 3
},
{
contentID: [10, 20],
occurrences: 1
},
{
contentID: [10, 20],
occurrences: 1
}
]
但是,如果需要,也可以将其单独排序:
Object.keys(tags).sort((a, b) => tags[b].occurrences - tags[a].occurrences)
您的结果将是一个数组
['05', '04', '02', '01']