如何按键对所有json对“ key”:“ value”进行排序?

时间:2018-10-10 17:30:22

标签: java json

所以,我有下一个json

{
     "massive2":[
         "a",
         "c",
         "b"
     ],
     "key5":"val5",
     "key2":"val2",
     "massive1":[
          "3",
          "4",
          "2",
          "1"
    ],
    "key3":"val3",
    "key4":"val4",
    "key1":"val1"
}

如何按字母顺序对所有对中的所有键对和所有重整元素(到json的末尾)中的所有元素进行排序,或者如果按其他某种方式重整以获得json

{
     "key1":"val1",
     "key2":"val2",
     "key3":"val3",
     "key4":"val4",
     "key5":"val5",
     "massive1":[
          "1",
          "2",
          "3",
          "4"
    ],
     "massive2":[
         "a",
         "b",
         "c"
     ]
}

我事先不知道我的json有多深。 也许有一些Java库?

1 个答案:

答案 0 :(得分:1)

let items = {
     "massive2":[
         "a",
         "c",
         "b"
     ],
     "key5":"val5",
     "key2":"val2",
     "massive1":[
          "3",
          "4",
          "2",
          "1"
    ],
    "key3":"val3",
    "key4":"val4",
    "key1":"val1"
};

let data = {};

Object.keys(items).sort().forEach(function(k){
    data[k] = items[k];
});

console.log(data);