Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/439.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
什么';确保我的密钥在javascript对象中始终位于第一位的最简单方法是什么?_Javascript_Performance_Sorting_Object_Key - Fatal编程技术网

什么';确保我的密钥在javascript对象中始终位于第一位的最简单方法是什么?

什么';确保我的密钥在javascript对象中始终位于第一位的最简单方法是什么?,javascript,performance,sorting,object,key,Javascript,Performance,Sorting,Object,Key,我有一个对象,它的值和键的顺序各不相同 var obj = { extension50: {}, extension55: {}, main: {} } 注:我的“主”键放错了位置。它应该放在开头,这样当有人遍历这个对象的键时,它会首先出现 实现它的最佳方法是什么?JavaScript对象是无序的。如果需要特定的订单,请使用数组。不能保证订单保持不变。如前所述,对象是无序的,无法保证有序。可能执行如下操作:var obj=[{},{extension50:{},extension55:{}],

我有一个对象,它的值和键的顺序各不相同

var obj = { extension50: {}, extension55: {}, main: {} }
注:我的“主”键放错了位置。它应该放在开头,这样当有人遍历这个对象的键时,它会首先出现


实现它的最佳方法是什么?

JavaScript对象是无序的。如果需要特定的订单,请使用数组。

不能保证订单保持不变。如前所述,对象是无序的,无法保证有序。可能执行如下操作:
var obj=[{},{extension50:{},extension55:{}]
,其中数组的第一个索引保证保存通常在
main
中的值,这取决于您使用的ECMAScript的版本。关于ECMAScript 2015,您可以使用它在查看时保持插入顺序for@philipyoo:那是过时的信息。请参阅上面的第一个副本。这不再是事实。现在的答案是:这很复杂。嗯,他是对的,我刚刚测试过:@T.J.Crowder,你有一个标准答案吗?@Anonymous:不,他没有——请看。Hubert-这也是你想要的答案。嗯,JavaScript是一种非常复杂的语言。语法很简单,但所有这些额外的规则你需要知道。。。谢谢你的链接。刚刚学到了另一件事。