一尘不染

更改嵌套JSON结构中的密钥名称

json

我有一个JSON数据结构,如下所示:

{
    "name": "World",
    "children": [
      { "name": "US",
          "children": [
           { "name": "CA" },
           { "name": "NJ" }
         ]
      },
      { "name": "INDIA",
          "children": [
          { "name": "OR" },
          { "name": "TN" },
          { "name": "AP" }
         ]
      }
 ]
};

我需要将键名称从“名称”和“子代”更改为“键”和“值”。关于如何为该嵌套结构中的每个键名执行此操作的任何建议?


阅读 186

收藏
2020-07-27

共1个答案

一尘不染

我不知道为什么JSON标记的末尾会有分号 (假设这就是问题中所代表的意思) ,但是如果删除了分号,则可以在分析数据时使用 reviver函数
进行修改。

var parsed = JSON.parse(myJSONData, function(k, v) {
    if (k === "name") 
        this.key = v;
    else if (k === "children")
        this.value = v;
    else
        return v;
});

演示: http :
//jsfiddle.net/BeSad/

2020-07-27