JSON フォーマッター
インテリジェントなインデントとシンタックスハイライトで、JSONデータの整形・検証・美しい表示を実現
JSON 入力
フォーマット結果
インスペクター
詳細設定
別のJSONと比較
このJSONをData Diffに送り、2つ目のバージョンを貼り付けて変更内容を確認できます。
すぐに対処できる検証結果
キー入力のたびに検証が実行されます。JSONが有効な場合は、オブジェクト・配列・キー・深度の数がリアルタイムで表示されます。無効な場合は、「Invalid JSON」とだけ表示されるのではなく、正確な行と桁、考えられる原因、そしてエディター内のエラー位置のハイライト付きでエラーが報告されます。
このツールが特定できる一般的なJSONエラー
この4つのミスが、無効なJSONの大半を占めます。それぞれ位置と原因の見当付きで検出されます:
末尾カンマ
} や ] の直前に付いたカンマです。エラーは次の行で「unexpected token」として報告され、原因メッセージがそのカンマを指し示します。
引用符の欠落・不一致
閉じられていない文字列は、ドキュメントの残り全体を飲み込んでしまいます。パーサーは実際のミスから離れた場所で unexpected token を報告するため、行・列のハイライトを手がかりに確認してください。
予期しないトークン
ダブルクォートの代わりのシングルクォート、コメント、引用符なしのキーなどです。標準のJSON(RFC 8259)では、すべての文字列とキーにダブルクォートが必要です。
無効なエスケープシーケンス
有効なエスケープは \" \ \/ \b \f \n \r \t および \uXXXX のみです。単独のバックスラッシュは、無効なシーケンスの正確な位置でエラーになります。
整形前 / 整形後
左側は圧縮されたAPIレスポンス、右側は同じデータを2スペースインデントで整形したものです。構造・ツリー・パスは解析済みドキュメントから更新されます。
{"user":{"id":123,"name":"Chen","roles":["admin","editor"],"active":true}}
{
"user": {
"id": 123,
"name": "Chen",
"roles": [
"admin",
"editor"
],
"active": true
}
}
JSON標準クイックリファレンス(RFC 8259)
- 2種類の構造:オブジェクト(順序のない名前/値のペア、{})と配列(順序付きの値、[])。
- 値はダブルクォートで囲んだ文字列、数値、true、false、null、オブジェクト、または配列のいずれかです。
- 数値の先頭に0は付けません。1E10 や 0.5e-2 の指数表記は許可されています。
- 文字列に制御文字をそのまま含めることはできません。エスケープ(\n、\t、\uXXXX)する必要があります。
- コメント不可、末尾カンマ不可、シングルクォート不可 — この厳格な文法こそがJSONの移植性を支えています。
このデータの次のステップ
整形は最初のステップです。ブラウザから離れずにワークフローを続けられます:
よくある質問
Json Formatter フォーマットに関するよくある質問
はい、本JSONフォーマッターは完全無料で、登録も不要です。すべての処理はブラウザ内で行われます。
JSONデータをエディターに貼り付けて「Validate」をクリックするだけです。ツールが即座に構文をチェックし、行番号付きでエラーを報告し、オブジェクト/配列/プロパティの数を表示します。
JSONのミニファイは、不要な空白をすべて削除してファイルサイズを削減する処理です。本番環境にJSONをデプロイする前に使えば、帯域幅を節約し、読み込み時間を改善できます。
はい、最適化されたパースアルゴリズムにより、最大10MBのファイルに対応しています。大きなAPIレスポンス、データベースのエクスポート、設定ファイルも効率的に処理されます。
このフォーマッターは厳密なRFC 8259のJSON仕様に従います。末尾カンマやコメントを含むJSONは標準的なJSONとしては無効であるため、検証時にはエラーとして報告されます。
\u00e9 のようなエスケープは表示用にデコードされ、非ASCIIテキストは再エスケープされずそのまま保持されます。数値と文字列が混在する配列のソートは安定ソートのセマンティクス(等しいキーは元の順序を維持)に従い、ECMA-262に基づく最新エンジンの Array.prototype.sort の実装と一致します。
はい。オプションパネルでキーソートを有効にすると、すべてのネストレベルでオブジェクトのプロパティがアルファベット順に並べ替えられます。ソートにより、無関係な挿入がファイル全体に変更を散らばらせなくなるため、設定ファイルやAPIフィクスチャをバージョン管理でdiffしやすくなります。
JSON自体には整数のサイズ制限はありませんが、JavaScriptのNumber型が保持できるのは53ビットの安全な整数までです。9,007,199,254,740,991(2^53 - 1)を超える値や高精度の小数は丸められます。これはECMA-262に記載されたJavaScriptエンジンの制約であり、フォーマッターのバグではありません。API設計では、そのような値は文字列として扱ってください。
権威ある参考文献
このツールが扱うフォーマットを定義する標準仕様と公式ドキュメントです。
RFC 8259 - The JavaScript Object Notation (JSON) Data Interchange Format
JSONデータ交換フォーマットとその文法を定義するIETF標準です。
JSON - json.org
Douglas Crockford氏によるオリジナルのJSONサイト。多数の言語によるフォーマットの紹介を掲載しています。
MDN Web Docs - Working with JSON
JavaScriptでJSONを扱うためのMozillaガイド。parse、stringify、reviverについて解説します。
JSON - Wikipedia
JSONのデータ型、構文の歴史、そして主要なAPI交換フォーマットとしての台頭について。