JSONの整形(フォーマット)・圧縮(ミニファイ)・構文チェックをブラウザ上で実行できるツールです。 データはサーバーに送信されません。
1. オプション
2. JSONを入力
3. バリデーション結果
ここにバリデーション結果が表示されます
4. 整形結果
整形結果がここに表示されます
使い方
- テキストエリアにJSONを貼り付けます
- インデント幅を選択します(デフォルト: 4スペース)
- 「整形する」ボタンで整形、「圧縮する」ボタンでミニファイします
- バリデーション結果で構文が正しいか確認できます
- 「クリップボードにコピー」で結果をコピーします
注意事項
- このツールはブラウザ上で動作し、データはサーバーに送信されません
- 非常に大きなJSONファイルの場合、ブラウザの性能に影響する可能性があります
- JSON5やJSONLなどの拡張形式には対応していません
JSON整形・圧縮はどんなときに使うか
APIのレスポンスやアプリのログに出てくるJSONは、1行にぎっしり詰まっていて目で追いづらいことが多い。整形すると階層構造が見えるようになり、どのキーにどの値が入っているかをひと目で確認できる。
逆に、設定ファイルを通信に乗せたり、データ量を少しでも減らしたいときは圧縮(ミニファイ)が役立つ。整形しても圧縮しても、表している値は同じ。見た目のためにスペースを足すか、容量のためにスペースを削るかの違いだけなので、用途で使い分ければよい。
よくある構文エラーと原因
「整形できない」と出るときは、たいてい次のどれかに当てはまる。
- 配列やオブジェクトの末尾にカンマが残っている(
[1, 2, 3,])。JSONでは許されない - 文字列をシングルクォートで囲っている。JSONはダブルクォートのみ
- キーに引用符が付いていない(
{name: "太郎"})。キーも必ずダブルクォートで囲む - コメント(
//や/* */)が混ざっている。JSONはコメント非対応 - コピーの過程で全角スペースや全角の引用符が紛れ込んでいる
- ファイル先頭に見えないBOMが付いている
エラーには「○行目、○列目付近」と位置が出るので、その周辺を見ると原因が絞り込める。
このツールの仕組み
入力されたテキストをブラウザ標準の JSON.parse() に通して構文を検証し、問題なければ JSON.stringify() でインデントを付け直している。圧縮はインデントなしで文字列化するだけ。外部ライブラリもサーバー処理も使わず、すべて端末の中で完結する。だから貼り付けたデータが外に出ることはない。
よくある質問
- JSONの整形と圧縮(ミニファイ)はどう違う?
- 整形は改行とインデントを入れて人が読みやすい形にする処理。圧縮は空白をすべて取り除いてデータ量を最小にする処理。値そのものは変わらず、見た目だけが変わる。
- 入力したJSONはどこかに送信される?
- いいえ。ブラウザの中だけで JSON.parse と JSON.stringify を使って処理しており、サーバーには一切送信しない。
- 「整形できない」と表示されるのはなぜ?
- 末尾のカンマ、シングルクォート、引用符のないキーなど、JSONの文法から外れた書き方が原因のことが多い。エラーに出る行・列のあたりを見直すと見つかりやすい。