场景 :考虑我有一个JSON文档,如下所示:
{ "name": "David", "age" : 78, "NoOfVisits" : 4 }
问题:我想更改文档中字段的顺序/顺序,说我要age,NoOfVisits然后最后一次name。
age
NoOfVisits
name
到目前为止,我将值存储在临时变量中,删除该字段并重新创建相同的字段。由于重新分配不起作用:(
我是通过以下方式做到的:
temp = doc["age"]; delete doc['age']; doc["age"] = temp; temp = doc["NoOfVisits "]; delete doc['NoOfVisits ']; doc["NoOfVisits"] = temp; temp = doc["name"]; delete doc['name']; doc["name"] = temp;
这样我将获得所需的有序JSON文档。这项要求很特殊,但我仍然需要一些有效的解决方案
问题 :有人可以通过有效的方法来帮助实现这一目标吗?
可能是您可以使用 JSON.stringify()
JSON.stringify()
喜欢
var json = { "name": "David", "age" : 78, "NoOfVisits" : 4 }; console.log(json); //outputs - Object {name: "David", age: 78, NoOfVisits: 4} //change order to NoOfVisits,age,name var k = JSON.parse(JSON.stringify( json, ["NoOfVisits","age","name"] , 4)); console.log(k); //outputs - Object {NoOfVisits: 4, age: 78, name: "David"}
将所需的键顺序放入数组中并提供给函数。然后将结果解析回json。这是一个小提琴样品。