【发布时间】:2021-09-05 15:31:09
【问题描述】:
感谢您的帮助或想法如何按第一个值升序对对象数组进行排序。
这是数组
[{"0":"yanni"},
{"1150":"finally"},
{"852":"discovered"},
{"59":"what"},
{"30064":"had"},
{"397":"really"},
{"3100":"happened"},
{"3":"to"},
{"0":"skura"},
{"7523":"lets"},
{"6550":"try"},
]
我想按第一个数字排序:
[{"0":"yanni"},
{"0":"skura"},
{"3":"to"},
{"59":"what"},
.....
]
我试过这样
const keys = Object.keys(sentenceFreq);
console.log("key",keys)
const valuesIndex = keys.map((key) => ({key, value: sentenceFreq[key]}));
valuesIndex.sort((a, b) => b.value - a.value); // reverse sort
const newObject = {};
for (const item of valuesIndex) {
newObject[item.key] = item.value;
}
console.log("test", newObject);
但它们仅按键值排序...
任何帮助是appericated。 谢谢!
【问题讨论】:
-
它应该按从0开始的数字排序,所以0之后的最小数字是3然后是59..
标签: javascript node.js arrays sorting