JSONとは
- 「Javascript Object Notation」の略で「ジェイソン」という
- テキストフォーマットの一種で、シンプルかつ軽量
- null、真偽値、文字列、配列、オブジェクト(連想配列)のデータを文字列で表現できる
- 配列とオブジェクトはネスト構造で表現することができる
- XMLと比べて比較的仕様が簡単なため導入が容易
フォーマットについて
- 空白、タブ、改行などの整形用の文字は自由に挿入できる
文字列の表現
- 文字列はダブルクォーテーションでくくる(シングルクォーテーションでくくることはできない)
数値の表現
- 整数、小数、指数を表現できる
- 16進数や8進数の表記を使用することはできない
- NaN値やInfinity値は使用できない
null値の表現
- nullと記述する
- undefined値は使用できない
配列の表現
- 配列リテラルをそのまま使用できる
json
// 配列
[true, false, 0, 1, 2, 1.5, "あ", "い"]
//多次元配列
[
[
["A", "B", "C"],
["D", "E", "F"]
], [
["G", "H", "I"],
["J", "K", "L"]
], [
["M"],
["N"],
["O"]
]
]
オブジェクトを表現
- オブジェクトのキーは文字列の表現と同じ
- ダブルクォーテーションでくくる(シングルクォーテーションでくくることはできない)
- クォーテーションを省略することもできない()
json
//オブジェクト
{
"name": "hogeta",
"age": "12",
"address": "shibuya",
"result": true
}
//配列とオブジェクトの組み合わせ
{
"a": {
"name": "a",
"id": 1,
"result": false
},
"b": {
"name": "b",
"id": 2,
"result": true
},
"c": {
"name": "c",
"id": 3,
"result": true
}
}