2015/11/14

【JavaScript】JSON.stringifyでJSONデータを整形して出力する

JSONを読み込んで、編集して、出力するというツール(Node.jsで)をつくっていた。
JSONデータを出力するとき、JSON.stringifyを使うのだが、そのまま出力してしまうと可読性がまったくなくなってしまう。

JSON.stringifyの第三引数(space)を使うと、JSONを整形してくれる。


JSON.stringifyでJSONを整形する

var json = {
    "a1": {
        "a1-b1": 1,
        "a1-b2": 2,
        "a1-b3": {
            "a1-b3-c1": 1
        }
    },
    "a2": {
        "a2-b1": 1,
        "a2-b2": 2
    },
    "a3": "3"
};

console.log(JSON.stringify(json, null, ' '));
// 出力結果
//  {
//    "a1": {
//     "a1-b1": 1,
//     "a1-b2": 2,
//     "a1-b3": {
//      "a1-b3-c1": 1
//     }
//    },
//    "a2": {
//     "a2-b1": 1,
//     "a2-b2": 2
//    },
//    "a3": "3"
//  }


console.log(JSON.stringify(json));
// 出力結果(そのまま出力するとこんな感じ)
//   {"a1":{"a1-b1":1,"a1-b2":2,"a1-b3":{"a1-b3-c1":1}},"a2":{"a2-b1":1,"a2-b2":2},"a3":"3"}

16行目のように、JSON.stringifyの第三引数(space)を指定すると、引数の値を先頭につけて整形してくれる。



参考サイト





以上

written by @bc_rikko

0 件のコメント :

コメントを投稿