「データをJSONで送って」
「返ってきたJSONを確認して」
JSON(ジェイソン)は、アプリやWeb APIで広く使われているデータ形式です。
今回は、JSONを「中身を書いたダンボール」に例えて解説します。
結論:「JSON」=「構造のあるデータを、文字で表すための書式」
JSONは、JavaScript Object Notationの略です。
軽量なテキスト形式で、プログラミング言語に依存せず、構造化されたデータを表現できます。
JavaScriptから生まれた形式ですが、Python、Java、PHP、Goなど、多くの言語で扱えます。
「ダンボール」で例えると?
引越しの箱に「食器」「本」と書けば、開ける前に中身を想像できます。
JSONも、名前と値を組み合わせて、何のデータか分かる形にします。
{
"name": "かたかた",
"age": 25,
"favoriteFoods": ["寿司", "ラーメン"],
"active": true
}
この例には、文字列、数値、配列、真偽値が含まれています。
JSONで表せるもの
JSONでは、次の値を組み合わせられます。
- 文字列:
"かたかた" - 数値:
25 - 真偽値:
trueまたはfalse - null: 値がないことを表す
- オブジェクト: 名前と値の組み合わせ
- 配列: 複数の値を順番に並べたもの
コメント、関数、日付専用の型などは、JSONの標準には含まれません。日付を文字列で送る場合は、送り手と受け手で形式を決めます。
なぜExcelではなくJSONなの?
ExcelとJSONは、得意な目的が違います。
- Excel: 人が表を見て、計算・分析・編集するのが得意。
- JSON: ソフトウェア同士が、構造のあるデータを交換するのが得意。
JSONは装飾を持たないテキストなので、通信や設定ファイルで扱いやすい形式です。ただし、いつでも最小・最速とは限りません。用途によっては、CSVやバイナリ形式のほうが小さくなることもあります。
Web APIではどう使う?
天気情報を返す架空のAPIなら、次のようなJSONを返せます。
{
"location": "東京",
"weather": "晴れ",
"temperature": 24.5,
"precipitationProbability": 0
}
アプリは、この中からweatherやtemperatureの値を取り出し、画面へ表示します。
ただし、外部から届いたJSONをそのまま信用してはいけません。
- 必要な項目があるか
- 期待した型か
- 数値や文字列が許容範囲か
- 想定外に大きなデータではないか
受け取った側で確認してから使います。
「JSONが壊れている」とは?
次のような書き方は、正しいJSONではありません。
{ name: "かたかた", }
JSONでは名前を二重引用符で囲み、最後の項目の後ろへ余分なカンマを付けません。構文が正しくても、必要な項目が不足していれば、アプリ側では処理できないことがあります。
まとめ
- JSON = 「構造のあるデータを文字で表す書式」
- 特徴 = 「軽量なテキストで、多くの言語から扱える」
- 用途 = 「Web API、設定ファイル、データ交換など」
- 注意点 = 「受け取ったデータの内容を確認してから使う」
JSONは魔法の箱ではありません。送り手と受け手が同じ構造を理解することで、初めて正しく情報を交換できます。
次の記事では、HTTP通信の結果を伝える「ステータスコード」について解説します。
ここまでお読みいただきありがとうございました!
QUICK CHECK
よくある質問
JSONはプログラミング言語ですか?
いいえ。JSONはデータを文字で表すための書式です。JavaScript、Python、PHPなど多くの言語から読み書きできますが、JSON自体が処理を実行するわけではありません。
次に読むなら?
STATUS CODEの記事へ進むと、開発や通信の流れを順番に理解できます。
参考資料
用語の定義や仕様を確認するため、公式文書・標準文書を参照しています。リンク先の内容は更新される場合があります。