Angular 在typescript中对Json对象键重新排序

Angular 在typescript中对Json对象键重新排序,angular,typescript,Angular,Typescript,例如下面的例子 [ {'1000': '', '5000': '', '10000': '', 'Name': 'test1', 'Email': 'test1@gmail.com', 'Reason': ''}, {'1000': '', '5000': '', '10000': '', 'Name': 'test2', 'Email': 'test2@gmail.com', 'Reason': ''} ] 有没有一种方法可以像这样重新排序: [ {'Name': '

例如下面的例子

[
    {'1000': '', '5000': '', '10000': '', 'Name': 'test1', 'Email': 'test1@gmail.com', 'Reason': ''},
    {'1000': '', '5000': '', '10000': '', 'Name': 'test2', 'Email': 'test2@gmail.com', 'Reason': ''}
]
有没有一种方法可以像这样重新排序:

[
    {'Name': 'test1', 'Email': 'test1@gmail.com', '1000': '', '5000': '', '10000': '', 'Reason': ''},
    {'Name': 'test2', 'Email': 'test2@gmail.com', '1000': '', '5000': '', '10000': '', 'Reason': ''}
]

在您的特定情况下,答案是否定的。尽管ES6以及现代浏览器标准和实现保证了对象属性的顺序,但有一个主要的例外:整数索引

由于您的对象具有“1000”、“5000”和“10000”等键,您将无法实现所需的顺序;这些整数索引将始终位于第一位

按以下顺序遍历属性键:

首先,这些键是按数字升序排列的整数索引。 然后,所有其他字符串键,按照它们添加到对象的顺序。 [……]

大致上,整数索引是一个字符串,如果转换为53位非负整数,则返回相同的值。因此:

“10”和“2”是整数索引。 “02”不是整数索引。将其转换为整数并返回将导致不同的字符串“2”。 “3.141”不是整数索引,因为3.141不是整数。

还有一个简单的例子:

常量对象={ Z:1, B:2, C:3 }; console.logobj//维护创建顺序 常数obj2={ 答:1,, B:2, 100: 3 }
console.logobj2//不维护创建顺序对象属性的顺序应该无关紧要。如果是的话,你手头有一个糟糕的设计。最好的方法是重新思考你的设计。

。你的例子不清楚。请你加一个更清楚的例子好吗?