JSONフォーマットとは?
JSON(JavaScript Object Notation)はWebの汎用データ交換フォーマットです。APIのレスポンス、設定ファイルで使われ、あらゆるモダンなプログラミング言語がパースできます。フォーマット(整形)は、ミニファイされた読みにくいJSONにインデントと改行を追加し、人が一目で構造を理解できるようにします。
圧縮(ミニファイ)はその逆で、不要な空白をすべて削除し、本番運用に適した最小の有効なJSONを生成します。ペイロードが小さくなれば、ネットワーク転送が速くなり帯域コストも下がります。
このツールはブラウザ上で完全に実行されます。データがサーバーに送信されることはありません。
JSON5とは?
JSON5はJSONのスーパーセットで、人に使いやすい機能を追加しています。コメント(//と/* */)、末尾のカンマ、シングルクォート文字列、クォートなしのオブジェクトキー、16進数(0xFF)、NaNやInfinityなどの特殊値です。設定ファイルなど、手書きしやすくするために作られました。
JSON5モードを有効にすると、緩い入力を直接パースできます。JSON5モードがオフの場合でも、厳密なJSONパースが失敗すると自動的にJSON5パースにフォールバックします。その際は通知が表示されます。出力は常に標準JSONです。
一般的なユースケース
APIレスポンスのフォーマット: 生のAPIレスポンスを貼り付けて整形し、データ構造を理解する。
設定ファイルのミニファイ: 本番デプロイ前にJSONを圧縮してファイルサイズを削減。
手編集したJSONの修正: 末尾カンマやコメント付きのJSONを貼り付け、JSON5モードを切り替えてクリーンな標準JSONを得る。
オブジェクトキーのソート: JSONファイルをバージョン管理する際、一貫したDiff出力のためにキーをアルファベット順にソート。
制限事項
非常に大きなJSONファイル(10MB超)ではフォーマット中にブラウザが一時停止する場合があります。
JavaScriptの安全な整数範囲(±2⁵³)を超える数値は、JSON.parse/stringifyの往復後に精度が失われる場合があります。
JSON5のエラーメッセージに正確な行番号と列番号が含まれない場合があります。