本文へスキップ
SPCXTools

JSONフォーマッター&検証ツール

JSONの整形、軽量化、検証を瞬時に。エラー箇所も分かりやすく表示します。

ローカルで動作 — ファイルは端末から出ません

ツールを読み込み中…

JSONフォーマッター&検証ツールの使い方

  1. 1JSONを入力ボックスに貼り付けるか、サンプルを読み込むをクリックして試せます。
  2. 2整形(インデントをスペース2つ、4つ、またはタブに設定)か、軽量化(すべての空白を削除)を選択します。
  3. 3すべての階層でオブジェクトのキーをアルファベット順に並べ替えたい場合は、キーをソートにチェックを入れます。
  4. 4JSONが無効な場合は、エラーメッセージを確認してください。解析が停止した行と列が表示されます。
  5. 5結果をコピーするか、.jsonファイルとしてダウンロードします。

ブラウザでJSONを整形・検証

このJSONフォーマッターは、コンパクトな、あるいは乱雑なJSONを、読みやすいようにインデントされたきれいなテキストに変換します。また、JSONが無効な場合は即座に通知します。JSON軽量化ツールでもあり、軽量化モードに切り替えることで、本番環境用にすべての空白を削除できます。すべての処理はブラウザ内でローカルに実行されるため、APIレスポンス、トークン、ログ、設定ファイルなどをどこにもアップロードすることなく安全に扱うことができます。

入力または貼り付けと同時に、出力が更新されます。「送信」ボタンやサーバーの応答待ちはありません。

主な機能

  • 整形(Pretty Print):インデントをスペース2つ、4つ、またはタブから選択できます。
  • 軽量化(Minify):可能な限り最小の1行JSONを生成します。
  • エラー箇所付きの検証:解析に失敗した場合、メッセージに行と列番号が表示されるため、カンマの抜けや不要なクォートの箇所に直接移動できます。
  • キーのソート:すべてのネストレベルでキーをアルファベット順に並べ替え、一貫性のある比較可能な出力を得られます。
  • コピーまたはダウンロード:結果をコピーしたり、.jsonファイルとしてダウンロードしたりできます。

一般的な使用例

APIのデバッグ:REST APIやWebhookからのレスポンスは、しばしば長い1行の文字列として返されます。ここにレスポンスを貼り付けることで、その構造を確認し、必要なフィールドを見つけ、型をチェックできます。

設定ファイルの編集:多くのツールは設定をJSON(package.json、tsconfig.json、VS Codeの設定、クラウドテンプレートなど)で保存します。保存前に編集内容を検証することで、デプロイの失敗を防ぎます。

ペイロードの準備:リクエストボディで送信したり、環境変数に設定したり、HTMLに埋め込んだりする前に、JSONを軽量化します。

ドキュメントの比較:2つのJSONドキュメントのキーをソートしてから差分チェックツールで比較すると、実際に何が変更されたかを確認できます。

JSONの構文ルール(要約)

JSON(JavaScript Object Notation)は、JavaScriptのオブジェクト構文の厳密なサブセットです。

  • 文字列とオブジェクトのキーはダブルクォートで囲む必要があります(例:"name")。'name'やnameは使えません。
  • オブジェクトや配列の最後の要素の後にカンマを付けてはいけません(Trailing Commasの禁止)。
  • コメントは使用できません。//や/* */は許可されていません。
  • 許可されている値は、文字列、数値、true、false、null、オブジェクト、配列です。undefined、NaN、Infinity、日付はJSONの値ではありません。日付は通常、"2026-10-02T12:00:00Z"のようなISO形式の文字列として保存されます。
  • 文字列内の特殊文字(クォート、バックスラッシュ、改行など)はエスケープする必要があります(例:\"、\\、\n)。

Base64でエンコードされていたり、トークン内に含まれていたりするデータを受け取った場合は、まずBase64ツールやJWTデコーダーでデコードしてから、このツールで整形してください。

よくある質問

入力したJSONはサーバーに送信されますか?
いいえ。解析と整形は、お使いのブラウザに内蔵されているJSONエンジンを使用します。データがデバイスから外部に送信されることは一切ないため、APIレスポンスや設定ファイル、個人情報を含むデータなどを安全に貼り付けることができます。
JSONが無効だと表示されるのはなぜですか?
最も一般的な原因は、最後の項目の後にある余分なカンマ(trailing comma)、ダブルクォートの代わりにシングルクォートを使っている、キーがクォートで囲まれていない、コメントが含まれている、undefinedやNaNのような値が使われている、などです。これらはJavaScriptでは許容されますが、厳密なJSONの仕様では無効です。エラーメッセージにはパーサーが停止した場所が表示され、通常は間違いの箇所かその直後を指しています。
キーをソートするとデータの内容が変わりますか?
ソートによって変更されるのは、オブジェクト内のキーの順序だけです。値や配列の順序は一切変わりません。ソートされた出力は、2つのJSONドキュメントを比較したり、バージョン管理システムで設定ファイルをきれいに保ったりするのに役立ちます。
整形(Beautify)と軽量化(Minify)の違いは何ですか?
整形(Beautify)は、人間が構造を読みやすいように改行とインデントを追加します。軽量化(Minify)は、不要なスペースや改行をすべて削除し、ペイロードを可能な限り小さくします。これは、ネットワークリクエストやコードへのJSONの埋め込みに適しています。
サイズの大きいJSONファイルも処理できますか?
はい。数メガバイトのファイルであれば、一般的なコンピュータで瞬時に整形できます。数百メガバイトのような非常に大きなファイルの場合は、お使いのブラウザのメモリ容量にのみ依存します。
大きな数値は正確に保持されますか?
JSONの数値はJavaScriptの数値型に変換されます。JavaScriptの数値型は2^53(約9000兆)までの整数を正確に表現できます。一部のデータベースIDなど、これより大きな整数は精度が失われる可能性があります。精度が重要な場合は、そのようなIDを文字列として保存してください。