我有以下对象:
{1234: "3.05", 1235: "2.03", 1236: "3.05"}
我想按值对它们进行排序,以获得类似这样的结果:
{1235: "2.03", 1234: "3.05", 1236: "3.05"}
我尝试过:
const sortedList = _.orderBy(myList, (value, key) => {
return value;
}, ['asc']);
对值进行排序,但这只是值列表:
{0: "2.03", 1: "3.05", 2: "3.05"}
如何保留密钥?
答案 0 :(得分:1)
是的,可以。唯一要注意的是,输出必须是数组才能保证键的顺序。
const input = {1234: "3.05", 1235: "2.03", 1236: "3.05"}
const output = Object.entries(input)
.sort(([, v1], [, v2]) => v1 - v2)
.map(([key, value]) => ({ [key]: value }))
console.log(output)