JSON フォーマッタ & バリデータ
インデント調整可能な JSON の美化・検証・圧縮。構文エラーを即座に検出——結果をコピーまたはダウンロード、100% ブラウザ内で完結。
入力 JSON
出力
JSON とは?
JSON(JavaScript Object Notation)は JavaScript のオブジェクトリテラルに由来する軽量のテキストベースデータ交換形式です。人間が読めるキーと値のペアと順序付きリストを使用して構造化データを表現し、RFC 8259 で規定されています。JSON は 6 つのデータ型——文字列、数値、真偽値、null、オブジェクト、配列——をサポートし、言語非依存です。ほぼすべての現代プログラミング言語が JSON を解析・生成できます。
JSON はコンパクトで解析が容易、JavaScript と直接互換性があるため、Web API、設定ファイル、NoSQL データベース、サービス間通信の事実上の標準となっています。REST レスポンスの読み取り、package.json の編集、Webhook ペイロードの検査など、JSON を扱う場面は至る所にあります。
JSON をフォーマット・検証する理由
API から取得したり機械が生成した JSON は、帯域幅を節約するため圧縮されていることが多く、インデントも改行もありません。転送には効率的ですが、手作業での読み書きが困難です。フォーマッタ(美化ツールや pretty-printer とも呼ばれる)は一貫したインデント、改行、スペーシングを再導入し、構造を一目で把握できるようにします。
検証も同様に重要です。カンマの位置の間違い、クォートされていないキー、末尾のカンマ 1 つで JSON ドキュメントが解析不能な無効な構文になることがあります。バリデータはドキュメントが整形式かを即座に通知し、エラー位置を特定するため、保存・デプロイ・ペイロード送信前に修正できます。
このツールの機能
この JSON フォーマッタ & バリデータは 1 パスで 3 つのことを行います:
- 検証——入力を厳密に解析します。無効な場合は問題の位置を示す明確なエラーメッセージを表示します。
- 美化——解析された値を選択したインデント(スペース 2 個、4 個、タブ)で再シリアライズし、ネストされたオブジェクトや配列を追跡しやすくします。
- 圧縮——「圧縮」オプションを選択するとすべての空白を削除し、保存や転送に最適な最小表現を生成します。
ツールは入力と出力のサイズ、および JSON 値の最上位型(オブジェクト、配列、文字列、数値、真偽値、null)も報告し、扱っている内容をすばやく把握できます。
JSON フォーマッタを使うタイミング
手作業で JSON を読み書き・デバッグする必要があるとき、常に JSON フォーマッタが役立ちます。一般的なシナリオは次のとおりです:
- API レスポンスの検査。レスポンスボディを貼り付けてネストされたフィールドを読み、データ構造を確認。
- 設定ファイルの編集。多くのツール(eslint、tsconfig、package.json、VS Code 設定)は JSON 設定を使用し、フォーマットで可読性を維持。
- Webhook のデバッグ。受信ペイロードを期待されるスキーマと比較し、欠落や型違いのフィールドを発見。
- テストフィクスチャの準備。フィクスチャを pretty-print して構文を壊さずにレビュー・修正できるように。
- デプロイ前の圧縮。本番環境でペイロードサイズを削減するため、埋め込み JSON の空白を削除。
JSON のよくある落とし穴
JSON の構文は厳密で、いくつかの間違いが検証エラーの大部分を占めます。これらを知ることで有効な JSON を速く書けます:
- 末尾のカンマ。厳密な JSON ではオブジェクトや配列の最後の項目の後のカンマは許可されません。
- クォートされていないキー。オブジェクトのキーは二重引用符で囲む必要があります——単一引用符や裸の識別子は無効です。
- 単一引用符の文字列。文字列値には二重引用符のみ使用できます。
- コメント。JSON は
//や/* */コメントをサポートしません。必要な場合は JSONC や JSON5 などの形式を使用してください。 - 特殊な数値。
NaN、Infinity、-Infinityは JSON では無効です——nullまたは文字列を使用してください。 - エスケープされていない制御文字。文字列内のリテラルタブや改行は
\tと\nとしてエスケープする必要があります。
このツールがエラーを報告した場合、通常はこれらの問題のいずれかを指しています。ハイライトされた位置を修正して再度フォーマットし、確認してください。
この JSON フォーマッタは無料ですか?
はい、完全に無料で、登録不要、デバイスのメモリ以外に制限はなく、アップロード不要——すべてローカルで実行されます。
JSONC(コメント付き JSON)に対応していますか?
いいえ。このツールは RFC 8259 に従い厳密な JSON を解析します。コメントは JSON 仕様の一部ではなく、構文エラーとして報告されます。
扱える最大サイズは?
ブラウザのメモリによってのみ制限されます。数 MB のドキュメントは通常機能しますが、非常に大きなファイルはテキストエリアの描画が遅くなる場合があります。
美化と圧縮の両方ができますか?
はい。インデントメニューから「圧縮(スペースなし)」を選択すると、すべての空白を削除し最小の有効な JSON を生成します。
データはアップロードされますか?
いいえ。すべての解析とフォーマットはブラウザ内で行われ、JSON がデバイスから離れることはありません。