JSONフォーマッター

JSONの整形、検証、圧縮。

入力
出力

JSON構文の基本

JSON (JavaScript Object Notation) は厳格な構文規則に従います:

  • データは名前/値のペアです: "name": "value"
  • オブジェクトは波括弧で囲まれます: { }
  • 配列は角括弧で囲まれます: [ ]
  • 文字列は一重引用符ではなく、二重引用符を使用する必要があります
  • 最後の項目の後にカンマは許可されません
  • JSONではコメントは許可されていません

JSONデータ型

JSONは6つのデータ型をサポートしています。これらを理解することで、データを正しく構造化し、検証エラーを回避できます。

文字列は二重引用符で囲まれたテキストです。改行などの特殊文字は \n のようなエスケープシーケンスが必要です。Unicodeは完全にサポートされています。

数値は整数または小数、正または負が可能です。指数表記も可能です。ただし、先行ゼロ、NaN、Infinityは不可です。

ブール値は小文字の true または false です。引用符は不要です。「true」とするとブール値ではなく文字列になります。

Nullは空または欠損値を表します。小文字の null で、引用符は不要です。空文字やゼロとは異なります。

配列は角括弧内の順序付きリストです。他の配列やオブジェクトを含む、任意のデータ型の組み合わせを含めることができます。

オブジェクトは波括弧内のキーと値のペアです。キーは文字列である必要があります。値は任意の型が可能です。オブジェクトは無制限にネストできます。

よくあるJSONエラー

これらの頻繁な間違いに注意してください:

  • {"a": 1,} のような末尾のカンマは削除する必要があります
  • 'text' のような一重引用符は二重引用符にする必要があります
  • {name: "value"} のような引用符のないキーは引用符で囲む必要があります
  • 文字列内の改行やタブはエスケープする必要があります
  • 007のような数値の先行ゼロは無効です

圧縮 vs 整形(使用場面)

APIレスポンスのファイルサイズ削減、データベースやlocalStorageへの保存、ネットワーク送信の効率化には「圧縮」を使用します。

データ構造のデバッグやレビュー、設定ファイルの編集、API例のドキュメント化には「整形(美化)」を使用します。

JSON検証

このフォーマッターは処理中にJSONを検証します。エラーがある場合、メッセージが何が間違っているか、どこにおおよその間違いがあるかを伝えます。一般的な問題には、キーの引用符不足、最後の項目の後の不要なカンマ、二重引用符の代わりに一重引用符を使用することなどがあります。JSONは設計上厳格であるため、わずかな構文エラーでもドキュメント全体の解析に失敗します。

JSONの使用場所

JSONはWeb上のデータ交換の標準形式になっています。ほぼすべての場所で遭遇します。

REST APIはリクエストとレスポンスの本文にJSONを使用します。最新のAPIからデータを取得する場合、ほぼ確実にJSONを受け取っています。

package.json、tsconfig.json、.eslintrcなどの設定ファイルは設定を保存するためにJSONを使用します。これらのファイルはツールやアプリケーションの動作を制御します。

MongoDBなどのデータベースはデータをJSONライクなドキュメントに保存します。ブラウザのlocalStorageとsessionStorageはJSON文字列を保持します。Redisはモジュールを使用してJSONを保存できます。

マイクロサービスはHTTP経由でJSONを使用して通信します。イベント駆動システムはJSONペイロードを渡します。ログ集約ツールでさえJSON形式のログエントリを期待することがよくあります。

よくある質問