Javascript 重新定位json数组对象元素

Javascript 重新定位json数组对象元素,javascript,json,Javascript,Json,嗨,我想把下面的json数据转换成不同的格式。这是一种重新排列json数据的方式。我也知道我们是通过密钥访问数据的,但我的要求如下,对此我无能为力。在下面所需的数据中,您可以看到月份始终排在第一位 给定数据:- [ { "Operating Company" : "7", "month" : "March", "Insolvency" : "2", "SPV / Asset Backed" : "4" }, { "Operating Company" : "3", "month" : "July

嗨,我想把下面的json数据转换成不同的格式。这是一种重新排列json数据的方式。我也知道我们是通过密钥访问数据的,但我的要求如下,对此我无能为力。在下面所需的数据中,您可以看到月份始终排在第一位

给定数据:-

[ { "Operating Company" : "7", "month" : "March", "Insolvency" : "2", "SPV / Asset Backed" : "4" }, { "Operating Company" : "3", "month" : "July", "Insolvency" : "43", "TBD" : "1" }, { "Operating Company" : "6", "month" : "August", "SPV / Asset Backed" : "27" }, { "Operating Company" : "54", "month" : "September", "Insolvency" : "114", "Operational Company" : "1", "SPV / Asset Backed" : "15" } ]
所需数据:-

[ { "month" : "March", "Operating Company" : "7", "Insolvency" : "2", "SPV / Asset Backed" : "4" }, {"month" : "July",  "Operating Company" : "3", "Insolvency" : "43", "TBD" : "1" }, { "month" : "August", "Operating Company" : "6", "SPV / Asset Backed" : "27" }, {"month" : "September",  "Operating Company" : "54", "Insolvency" : "114", "Operational Company" : "1", "SPV / Asset Backed" : "15" } ]

JSON规范不保证JSON处理器如何处理对象中键值对的顺序:

6个对象

JSON语法不对名称/值对的顺序[…]赋予任何意义。这些都是可以由JSON处理器定义的语义注意事项,或者在定义JSON用于数据交换的特定用途的规范中定义

资料来源:

ECMAScript 2015规范不保证对象中键的顺序:

9.1普通对象内部方法和内部插槽 9.1.11[[列举]]()

[…]未指定枚举属性的机制和顺序[…]

资料来源:

因此,您可以更改JSON对象中键-值对的顺序,但如果您将其更改为JavaScript对象,则无法再保证顺序

但是,如果在JavaScript中解析JSON对象时需要保持JSON对象的键值对的顺序,则需要编写自己的解析来解析JSON对象<代码>映射保证键的顺序


既然您在评论中提到D3.js需要这个,我很确定您的实际问题是其他的。请随时为您的D3.js问题提出另一个问题。

Javascript中不保证对象属性的顺序,通常也不重要。请帮助我。当我们必须使用D3.js绘制图形时,这很重要。欢迎使用StackOverflow!按照Barmar所说的,您尝试的将是困难的(并且可能不可维护)。在我看来,你有一个梦想。我想如果你问一个关于如何让D3按照你的方式运行的新问题,你会得到更多的帮助,得到更好的解决方案want@Vlad274我已经在问了,但没有得到预期的答案我已经问了与D3有关的问题