結論:項目名と値、複数の値の並びを見る
6項目の住所録を例にすると、JSONは項目名と値の関係を文字で表したデータとして読めます。"name":"サンプル" は、nameという項目にサンプルという文字列が入る、という組合せです。読みは一般に「ジェイソン」です。
{} は項目のまとまり、[] は順番のある値の並びと見ると、受け取ったファイルを追いやすくなります。項目名のnameやpostalCode自体はJSON共通の決まりではなく、渡す側と受け取る側が決める名前です。
JSON整形・CSV相互変換受け取ったデータの括弧と項目を見やすくする登録なしで使えます開く
読み方:架空の住所録1件でたどる
次のデータは説明用の架空例です。郵便番号も実在の宛先を示すものではありません。改行は読みやすくするために入れています。
json
{
"name": "サンプル",
"postalCode": "0123456",
"active": true,
"visits": 2,
"tags": ["郵送", "案内"],
"memo": null
}
| 見る場所 | この例の意味 | 読む手掛かり |
|---|---|---|
"name": "サンプル" |
nameの値は文字列 | コロンの前が項目名、後が値 |
"postalCode": "0123456" |
先頭0を含む文字列 | 数字の見た目でも引用符があれば文字列 |
"active": true |
trueという真偽値 | "true" という文字列とは別 |
"visits": 2 |
数値2 | "2" という文字列とは別 |
"tags": ["郵送", "案内"] |
2つの文字列の配列 | 配列には順番がある |
"memo": null |
nullという値 | 空の文字列や項目そのものの欠落とは別 |
nullを業務上どう解釈するかは、データを渡す仕組み次第です。未入力、取得できなかった値など、どの意味なのかまでJSONの記号だけで確定はできません。
1つの住所録と6つの入力を実測した
2026年9月30日、JSON整形ツールの現行ロジックをNode.js 24.15.0で実行しました。作例1件(n=1)の6項目・配列要素2個について、半角スペース2個の整形と、改行のない圧縮を往復させました。
UTF-8の大きさは110バイト→148バイト→110バイトでした。整形後を読み直して圧縮した内容は元の作例と一致しました。この例では改行や空白が増えただけで、項目や値は増えていません。
さらに作例から1か所ずつ変えた入力を含む6条件(n=6)を試しました。
| 入力の違い | ツールの読み取り結果 |
|---|---|
| 元の作例 | 成功 |
| nameの項目名を一重引用符で囲む | エラー |
| 最後の項目の後にカンマを足す | エラー |
| trueをTrueにする | エラー |
| 郵便番号の引用符を外し0123456という数値にする | エラー |
visitsの値を数値2から文字列 "2" にする |
成功 |
6条件中2件が成功、4件がエラーでした。最後の条件が示すように、読み取りに成功しても、受け取る業務に必要な型とは限りません。
一次資料:JSONの標準にある3つの説明
JSONの形はRFC 8259で確認できます。以下は同じ標準の異なる箇所からの短い抜粋です。
「An object is an unordered collection」
— RFC 8259 §1 Introduction https://www.rfc-editor.org/rfc/rfc8259.html#section-1(2026-09-30 到達)
オブジェクトを順序のない集まりとする説明です。項目の表示順だけを、業務上の優先順位と読むことはできません。
「An array is an ordered sequence」
— RFC 8259 §1 Introduction https://www.rfc-editor.org/rfc/rfc8259.html#section-1(2026-09-30 到達)
一方、配列には順番があります。項目のまとまりと配列で、順番の扱いが違います。
「The names within an object SHOULD be unique.」
— RFC 8259 §4 Objects https://www.rfc-editor.org/rfc/rfc8259.html#section-4(2026-09-30 到達)
同じ項目名を重複させないことを推奨する記述です。重複した名前をどの値として受け取るかは、処理系によって異なると同節で説明されています。
間違えやすい点
見た目を整えることと、意味を直すことは別です。
| 取り違え | 作例で見る違い |
|---|---|
| JSONなら住所録の項目名が統一されている | nameやpostalCodeは作例で選んだ名前 |
| 数字は全部数値にすればよい | 先頭0を残したい郵便番号は文字列として表した |
null と "" と項目なしは同じ |
データとして別の状態。業務上の意味は仕様次第 |
| 圧縮で項目が削られる | この作例では整形用の空白・改行が減り、値は一致 |
| 読み取りに成功すれば登録できる | 数値から文字列への変更も文法上は成功した |
長い番号や識別子をどう持つかも、受け渡しの仕様の一部です。JSONを整形しただけでは、相手の項目名、必須項目、型の条件まで自動的にそろいません。
測っていないこと・ここから先は推論
実際の住所録や外部サービスへの取り込みは試していません。この作例は6項目1件で、大容量データ、深い入れ子、重複した項目名、全種類のUnicode、CSVへの変換と戻しは検証対象外です。
整形の往復で内容が一致したのは今回の作例1件です。あらゆるJSONの意味や数値精度が変わらないという保証には広げていません。氏名や宛先が現実に正しいかも、文法検査の結果からは分かりません。
次の1手
架空の作例をJSON整形へ入れると、括弧の対応、項目名、値の区切りを改行付きで確かめられます。
JSON整形・CSV相互変換作例を整形して項目と配列を見分ける登録なしで使えます開く
次に使う道具:JSON整形・CSV相互変換