JSON を入力
JSON を貼り付けるか入力してください。.json ファイルを選択することもできます。
出力
上で選んだインデントで整形します。コピーやダウンロードができます。
上に JSON を貼り付けるか入力する、またはファイルを選択すると、ここに結果が表示されます。
ブラウザだけで JSON を整形・圧縮・検証
JSON を貼り付ける、直接入力する、または .json ファイルを選択してください。「整形」を選ぶとスペース2つ・スペース4つ・タブのいずれかでインテンドして見やすく表示し、「圧縮」を選ぶと不要な空白・改行をすべて取り除き、「検証」を選ぶと書き換えずにパースできるかどうかだけを確認します。
パースにはブラウザ標準の JSON.parse をそのまま使っています。あなたのコードが実行時に使うのと同じパーサーなので、ここで有効と判定された JSON はどこでも有効です。無効な場合は、ブラウザが実際に投げたエラーを、それが指す行・列と一緒にそのまま表示します。推測はしません。
JSON がデバイスの外に出ない理由
ここでの privacy は「約束」ではなく「構造」です。アップロードする先のサーバーがそもそも存在しないため、アップロードという処理自体がありません。整形ツールに貼り付ける JSON は実際の API レスポンスや設定ファイル、トークンなどを含むペイロードであることが多く、この点は特に重要です。
- パース・整形・圧縮・検証はすべてブラウザ内だけで完結します。
- ページは静的ファイルとして配信され、JSON データを伴うリクエストは一切発生しません。
- ソースコードは公開されており、誰でも読めます(MIT ライセンス)。
- オフラインでも動作します。これはデータが外に出ないからこそ可能です。
確認したい場合は、整形中にブラウザの「ネットワーク」パネルを開いてみてください。データを運ぶリクエストは存在しません。 ソースコードを見る。
使い方
-
JSON を入力する
テキストボックスに貼り付ける、直接入力する、または .json ファイルをクリックして選択します。ページ上のどこかにファイルをドロップしても読み込めます。
-
モードを選ぶ
「整形」は選んだインデント(スペース2つ・4つ・タブ)で見やすく表示します。「圧縮」は不要な空白をすべて取り除きます。「検証」はパースできるかどうかだけを確認します。
-
エラーがあれば修正する
無効な JSON の場合、ブラウザが実際に報告した行・列を該当行と一緒に表示します。問題箇所をすぐに見つけて直せます。
-
結果をコピーまたはダウンロードする
整形・圧縮した結果をクリップボードにコピーするか、.json ファイルとしてダウンロードできます。入力と出力のバイト数も表示されるので、圧縮でどれだけ小さくなったかが一目で分かります。
よくある質問
入力した JSON はどこかにアップロードされますか?
いいえ。パース・整形・圧縮・検証はすべてブラウザ内だけで完結します。サーバー側の処理は存在しないため、データがデバイスの外に出る経路自体がありません。ソースコードは公開されており、ブラウザの「ネットワーク」パネルで実際に確認できます。
「整形」「圧縮」「検証」は何が違いますか?
「整形」は一定のインデント(スペース2つ・4つ・タブ)で見やすく表示します。「圧縮」はその逆で、JSON の構文上不要な空白・タブ・改行をすべて取り除き、可能な限り小さい出力にします。「検証」はどちらも行わず、入力がパースできる有効な JSON かどうかと、無効な場合はどこで失敗したかだけを報告します。
エラーの位置はどうやって特定していますか?
ブラウザ自身の JSON パーサー(JSON.parse)が実際に投げたエラーをそのまま使い、そのエラーがテキスト中のどこを指しているかから行・列を算出しています。エラーメッセージの書式はブラウザによって異なり、正確な位置情報を含まない場合もあります。その場合は位置を推測で補うことはせず、生のメッセージをそのまま表示します。
整形や圧縮でデータの内容自体は変わりますか?
いいえ。変わるのは空白だけです。オブジェクトのキーの順序やすべての値は、ブラウザの JSON パーサーが読み取った通りに保たれます。並べ替えたり、追加・削除したりすることはありません。
ファイルサイズの上限はありますか?
固定の上限はありません。すべてブラウザ内で処理するため、実際の上限はお使いの端末のメモリに依存します。非常に大きいファイルはパースや整形に時間がかかる場合があります。
オフラインでも使えますか?
はい。PWA として動作し、初回アクセス後はキャッシュされるため、ネットワーク接続なしでも整形・検証できます。ホーム画面に追加してインストールすることもできます。