ひとことで言うと
JSONは、"キー": 値 の組を並べてデータを表す、プログラム同士でやり取りしやすいテキスト形式です。人が読んでも構造がひと目でわかり、多くのプログラミング言語がそのまま読み書きできます。
たとえ話でもう少し詳しく
JSONは、通販の荷物に添える明細書に似ています。明細書には「品名: ボールペン」「数量: 3」のように項目と中身が組になって書かれているので、箱を開けなくても中身の見当がつきます。JSONも "name": "田中" のように項目と値を組にして並べるので、送る側と受け取る側でプログラムが違っても、同じ書き方であれば迷わず読み取れます。この共通の書き方があるからこそ、異なる言語やサービス同士でもデータをやり取りできます。
よく出る場面・使いどころ
- API がデータを返す形式として使うとき
- 設定ファイルやアプリ間の連携データを保存したいとき
- ブラウザとサーバーが情報をやり取りするとき
- 異なる言語で書かれたシステム同士がデータを共有したいとき
似た言葉との違い
- API: APIはやり取りの窓口そのもの。JSONは、その窓口でやり取りされるデータの書き方の一つ
- CSV: CSVは表形式の羅列に向くが、JSONは項目ごとの階層やネストした情報も表現できる
実務で気にするポイント
- キーや値の綴りが1文字違うだけでプログラムが読み取れなくなる
- 数値と文字列を混同すると、想定外の計算結果になることがある
- データ量が多いと、そのままでは目視チェックがしづらくなる
- 外部から受け取ったJSONは、想定した形式かどうかを確認してから使う
注意: JSONはテキストなので、それ自体に暗号化の機能はありません。個人情報や認証情報を含める場合は、通信経路の保護(HTTPSなど)を別途用意する必要があります。