20

重複の可能性:
JavaScript を使用した JSON プリティ プリント

私は、プラットフォームの将来の開発者が JSON 配列を分析および理解するのに役立つプロジェクトに取り組んでいます。Facebook の素晴らしいグラフ エクスプローラー ページを参照しています。ここに表示されます。エクスプローラーと同じように、正しくタブがインデントされた改行配列で配列を出力したいと考えています。

配列は に出力されますtextarea。このため、改行とタブで問題が発生していると思います。prettify ライブラリも使用してみましたが、うまくいきませんでした。

例:

{"outcome" : "success", "result" : {"name" : "messaging-sockets", "default-interface" : "external", "include" : [], "socket-binding" : {"messaging" : {"name" : "messaging", "interface" : null, "port" : 5445, "fixed-port" : null, "multicast-address" : null, "multicast-port" : null}, "messaging-throughput" : {"name" : "messaging-throughput", "interface" : null, "port" : 5455, "fixed-port" : null, "multicast-address" : null, "multicast-port" : null}}}, "compensating-operation" : null}

に:

{
   "outcome":"success",
   "result":{
      "name":"messaging-sockets",
      "default-interface":"external",
      "include":[

      ],
      "socket-binding":{
         "messaging":{
            "name":"messaging",
            "interface":null,
            "port":5445,
            "fixed-port":null,
            "multicast-address":null,
            "multicast-port":null
         },
         "messaging-throughput":{
            "name":"messaging-throughput",
            "interface":null,
            "port":5455,
            "fixed-port":null,
            "multicast-address":null,
            "multicast-port":null
         }
      }
   },
   "compensating-operation":null
}
4

1 に答える 1

61

JSON.stringifyを使用できます:

JSON.stringify(jsonobj,null,'\t')

デモを参照してください。

更新:持っていないがjsonobj、json 文字列がある場合は、関数を使用する前に、次stringifyの行で json 文字列を json オブジェクトに変換します。

jsonobj = JSON.parse(jsonstring);
于 2012-07-06T09:16:55.403 に答える