Javascript:按值对对象排序

Javascript:按值对对象排序,javascript,Javascript,我的目标如下: {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",

我的目标如下:

{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"}

我怎样才能保留钥匙?

是的,你可以。唯一需要注意的是,输出必须是一个数组才能保证键的顺序

const input={1234:“3.05”,1235:“2.03”,1236:“3.05”}
常量输出=对象。条目(输入)
.sort(([,v1],,v2])=>v1-v2)
.map(([key,value])=>({[key]:value}))

console.log(output)
您无法对对象进行排序。对对象的键进行排序没有多大意义;它很易碎。如果您只是想将其用于演示,则始终可以使用
object.entries(yourObject).sort()
,按照您的意愿对对象条目进行排序。对象的顺序没有保证,因此有更好的方法可以做到这一点。解决方案实际上是基于您的目标。对象的顺序是有保证的,因此您可以对对象进行排序。但是,你不能对这个对象排序,因为它有整数索引。@TylerRoper这是真的,我认为委员会标准化了这个行为是好的,但我仍然强烈建议任何人不要构建依赖属性顺序来确定行为的应用程序代码。它只是一块巨大的虫子磁铁。