javascript中的按值排序简单字典/JSON对象

javascript中的按值排序简单字典/JSON对象,javascript,Javascript,您好,我从javascript开始,我想按值对这个JSON对象进行排序: aa = {Deuxième immatriculation: 2, Première immatriculation: 1, Suppression: 3} 为了得到这个结果 bb = {Première immatriculation: 1,Deuxième immatriculation: 2, ,Suppression: 3} 我该怎么做?谢谢基本的简单答案是否,因为对象属性的顺序在ECMAScript中是非标

您好,我从javascript开始,我想按值对这个JSON对象进行排序:

aa = {Deuxième immatriculation: 2, Première immatriculation: 1, Suppression: 3}
为了得到这个结果

bb = {Première immatriculation: 1,Deuxième immatriculation: 2, ,Suppression: 3}

我该怎么做?谢谢

基本的简单答案是否,因为对象属性的顺序在ECMAScript中是非标准的。永远不要假设JavaScript对象中元素的顺序。对象是无序的属性集合。下面的答案向您展示了如何在数组的帮助下“使用”排序属性,但决不改变对象本身属性的顺序。所以,不,这是不可能的。即使构建了具有预排序属性的对象,也不能保证它们将来会以相同的顺序显示

因此,更好的方法是将其设置为数组,然后进行排序并重建对象,如下所示

让输入={
第二,无刺激性:2,
Premièreèu非欺骗:1,
镇压:3
}
设sortable=[];
for(让属性输入){
push([property,input[property]]);
}
sortable.sort((a,b)=>a[1]-b[1]);
设objSorted={}
forEach(item=>objSorted[item[0]]=item[1])

log(objSorted)
这是否回答了您的问题?你是不是先试试谷歌的?对象键不保证按任何顺序排列。如果您需要强制执行一个命令,请向我们发送一个数组,然后对键进行排序。@jmargolisvt当然可以,但本例中有一个微妙之处,但感谢您的帮助help@Taplar非常感谢。