JSON フォーマットと検証の完全ガイド
· 6 分
JSON(JavaScript Object Notation)は、事実上のデータ交換標準になりました。API のデバッグ、設定ファイルのパース、データ転送など、JSON はあらゆるところにあります。
しかし生の JSON はほとんど読めません。だからフォーマットツールが必需品です。
なぜ JSON は目で読みにくいのか
API は通常 minify された JSON を返します:
{"name":"BoxrTools","tools":[{"slug":"json-formatter","category":"developer"},{"slug":"regex-tester","category":"developer"}],"stats":{"version":1,"free":true}}
技術的には有効ですが、フィールドを見つけるのに括弧を数える羽目に。
フォーマット後:
{
"name": "BoxrTools",
"tools": [
{ "slug": "json-formatter", "category": "developer" },
{ "slug": "regex-tester", "category": "developer" }
],
"stats": { "version": 1, "free": true }
}
同じデータが一目で読める構造に。
よくある JSON エラー 5 つ
1. 末尾カンマ
{ "a": 1, "b": 2, } // ❌ 構文エラー
JSON は末尾カンマを許しません。
2. シングルクォート
{ 'a': 1 } // ❌
ダブルクォートのみ。
3. キーがクォートされていない
{ a: 1 } // ❌
{ "a": 1 } // ✅
4. undefined のシリアライズ
JSON.stringify({ a: undefined }) // → '{}'
undefined は JSON に存在せず、消えます。
5. 循環参照
const a = {}; a.self = a;
JSON.stringify(a); // ❌ エラー
JSON は循環構造を表現できません。
どのインデントを使うか
- 2 スペース — コンパクト、深い入れ子に最適
- 4 スペース — より読みやすい
- タブ — 個人設定
正解はありません。重要なのは一貫性です。
検証 ≠ フォーマット
検証は「この JSON は有効か?」を問います。フォーマットは美しくするだけです。
良いツールは両方をやります。
私たちのツールを試す
JSON フォーマッター&バリデーター の機能:
- リアルタイム検証 + 行番号付きのエラーメッセージ
- 3 種類のインデント
- キーをアルファベット順にソート(オプション)
- ワンクリックで minify
- 100% ブラウザ処理 — データはデバイスから出ません