JSONとはJavaScript Object Notationの略称で、要はJavaScriptを参考にして作られたデータ形式のこと。元々はJavaScriptのみで使用することを前提に開発されたが、他のプログラミング言語とのやりとりが簡便で、軽量かつ高速なことから昨今ではJavaScriptとPython、PHPなどのサーバサイド言語とのデータのやりとりに重宝され、多数の言語の共通フォーマットとなっている。
また、使用言語はUTF-8のみ正常に動作することを保証している。
他のデータ形式と比較して
他のデータ形式にはCSV、XMLなどがあるが、CSVのようなデータ単位の見やすさと処理の高速さ、XMLのような階層のわかりやすさを兼ね揃えているので、人にもコンピュータにも優しいフォーマットとなっている。ただし、見やすいといってもあくまでプログラマーの感覚であって、階層が深くなると少し見づらさも起きうるので、そこは処理速度は劣るが、初心者に見やすく階層の視認性に優れるXMLとの使い分けが必要かも知れない。また、XMLと違ってJSONによるチェックはあくまで構文エラーチェックにとどまる。そのため、データの型指定ができるTypeScriptを併用することを勧めている。
具体的な書き方
このようなフォーマット形式である。ほぼJavaScriptと同じだが、相違点としてはデータの末尾にカンマを置いてはいけない。また、制御する言語によっては、クォートはダブルクォートだったりシングルクォートだったりする点も注意。
また、どっちが[]でどっちが{}かで迷うことがあるだろうが、そこはJavaScriptと同じで、インデックスで制御されている配列は[]、プロパティ(Pythonではディクショナリ、PHPでは連想配列)で制御されているオブジェクトは{}となる。
[
{"ジェイソン":[
{"genre":"PC用語","title":"JSON"},
{"genre":"映画",[
{"title":"13日の金曜日"},
{"title":"バットマン"}
]
},
{"genre":"人物",[
{"title":"ジェイソン・ベイツ"},
{"title":"厚切りジェイソン"}
]
}
]
}
]