Web で最も人気のあるデータ交換形式を理解しましょう。その構文、使用法、そしてなぜそれが最新の API の標準であるかを学びます。
JSON(JavaScript Object Notation)は、軽量なデータ交換形式です。人間にとって読み書きが容易であり、マシンにとって解析や生成が容易です。JavaScript プログラミング言語、標準 ECMA-262 第 3 版(1999 年 12 月)のサブセットに基づいています。
JSON は主にサーバーと Web アプリケーション間でデータを転送するために使用され、XML の代替手段として機能します。
REST API でデータを送受信するための標準形式です。
多くの最新のアプリケーション(VS Code、package.json など)は、設定の保存に JSON を使用します。
MongoDB や CouchDB などの NoSQL データベースは、保存に JSON ライクなドキュメントを使用します。
なぜ JSON はデータ交換の事実上の標準になったのでしょうか?
XML よりも冗長性が低いため、ファイルサイズが小さくなり、ネットワーク転送が高速になります。
ほぼすべてのプログラミング言語(Python、Java、C#、PHP など)でサポートされています。
読むだけで構造が理解しやすく、人間が読めるテキスト形式です。
追加のライブラリなしで、JavaScript エンジンで直接解析および文字列化できます。
JSON は 2 つの構造に基づいています:名前と値のペアのコレクション(オブジェクト)と、値の順序付きリスト(配列)。
名前/値のペアは、フィールド名(二重引用符で囲む)、コロン、値で構成されます。
各名前/値のペア、または配列内の値はカンマで区切られます。
オブジェクトは波括弧 {} で囲まれます。オブジェクトには複数の名前/値のペアを含めることができます。
配列は角括弧 [] で囲まれます。配列には複数の値を含めることができます。
{
"string": "Hello World",
"number": 42,
"boolean": true,
"null": null,
"object": {
"key": "value"
},
"array": [
1,
2,
3
]
}2 つの最も人気のあるデータ交換形式を比較します。
| 特徴 | JSON | XML |
|---|---|---|
| 可読性 | 読みやすい(スッキリ) | 読みにくい(冗長) |
| 解析速度 | 速い(ネイティブ) | 遅い(パーサーが必要) |
| データ型 | 豊富(文字列、数値、配列...) | 主に文字列のみ |
| サイズ | コンパクト | かさばる(終了タグ) |
JSON を効果的に使用し、一般的な落とし穴を回避する方法。
システム間の互換性を確保するために、常に JSON データを UTF-8 でエンコードしてください。
JSON には日付型がありません。ISO 8601 文字列(例:"2023-01-01T12:00:00Z")を使用してください。
標準 JSON では末尾のカンマは許可されていません。解析エラーの原因になります。
慣例として、一貫性を保つために JSON キーにはキャメルケース(例:"userName")を使用します。
いいえ。JSON は JavaScript から派生したものですが、言語に依存しないデータ形式です。JSON データを解析および生成するためのコードは、多くのプログラミング言語で容易に利用できます。
JSON は、文字列 (String)、数値 (Number)、ブール値 (Boolean)、Null、オブジェクト (Object)、および配列 (Array) をサポートしています。
JSON は XML よりも軽量で、読みやすく、解析が高速です。帯域幅の使用量が少なく、JavaScript とネイティブに連携するため、Web アプリケーションに最適です。