gpt4 book ai didi

javascript - 如何使用数字键对对象进行降序排序?

转载 作者:行者123 更新时间:2023-12-02 23:18:20 24 4
gpt4 key购买 nike

我遇到一个问题,我编写的代码似乎做了两件非常奇怪的事情。当逐行运行时,对象是在正确的 war 中的对象中构造的,但是一旦退出 for 循环,创建的对象似乎默认返回到按升序排列的键?

我发送到函数中的对象如下所示:

{
0: 'Hello',
20: 'World',
40: 'Test'
}
const reverseObject = (object) => {
const newObject = {};
Object.keys(object).reverse().forEach((key) => {
newObject[key] = object[key];
});
return newObject;
};

我期望这里发生的是一个看起来像这样的对象:

{
40: 'Test'
20: 'World',
0: 'Hello',
}

newObject 在循环期间看起来像这样

{
40: 'Test'
20: 'World',
0: 'Hello',
}

但是在返回线上看起来像

{
0: 'Hello',
20: 'World',
40: 'Test'
}

我不确定 javascript 中的某些深层内容是否限制了这种用例,但我尝试使用的 API 与它的设置获取具有与订单类似的键的对象的方式略有不同。

如果您能想出一种方法来按预期对其进行排序,我们将不胜感激。期待您的回复。

最佳答案

我不认为按键顺序是确定性的。至少 Chrome 似乎总是按顺序排列它们:

Object.keys({20: 'Hello', 30: 'There', 0: 'World'});
>> ["0", "20", "30"]

关于javascript - 如何使用数字键对对象进行降序排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57066907/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com