【发布时间】:2021-10-02 03:52:23
【问题描述】:
我正在尝试对 db 中的对象进行排序
MyOjbect : {
key: {
val1:"value",
val2:"",
val3:time,
val4:...
...}
}
我按 val3 对对象进行了排序
const sorted = Object.entries(MyObject)
.sort((x,y) => {x[1].val3 - y[1].val3} );
得到了一个数组类型。
0:(2) ["key" , {val1:...val2:...}]
1:(2) ["key" , {val1:...val2:...}]
...
我尝试 reduce() 让它回到对象类型,但它变成了未排序的顺序
如何保持订单排序并将类型更改为对象?
【问题讨论】:
-
表示非负整数的键将自动按升序排列,并将放在任何其他键之前。一般来说,依赖对象中项目的顺序并不是一个好主意,这也是原因之一。如果您想要一些有序且可序列化的东西,请使用数组。如果您不需要它可序列化,那么您可以使用始终保持插入顺序的 Map。
标签: javascript firebase sorting