JSONは,構造化されたデータを記述するための,テキスト・ベースのデータ記述言語の一つです。JavaScript(ECMAScript)でオブジェクト・リテラルを記述する構文をそのまま使っているため,人間が読んでわかりやすく,プログラムでも容易に処理できるという特徴があります。

 例えば,

{
"name":"Nikkei Software",
"price":980
}
という文字列は,それぞれnameという名前の文字列“Nikkei Software”,priceという名前の数値980を持つデータをJSON形式で記述した例です。

 JavaScriptプログラム中でこのJSON形式データを処理するには,evalメソッドを使います。evalメソッドは,引数として与えた文字列をJavaScriptプログラムとして解釈するメソッドで,JSON形式の文字列をオブジェクトにしてくれます。

 人間にもコンピュータにも扱いやすいという特徴を備える言語としては,標準規格となっている「XML(Extensible Markup Language)」があります。しかし,現実のアプリケーションでは「構造化されたデータを受け渡ししたいが,XMLほどの厳密さは必要ない」という場面が少なくありません。

 XMLより軽量なJSONはまさにこのような用途に適した形式です。例えば,Webアプリケーションのクライアント構築で盛んに使われるようになった「Ajax」は,もともとXMLデータをページ遷移と非同期にやり取りしていく形態を指していましたが,現在はXMLの代わりにJSONを使うケースが増えています。

 JSONの構文などの概要は,「Introducing JSON」というWebサイトに各国語でまとめられています。様々なプログラム言語でJSON形式のデータを扱うためのライブラリへのリンクもあります。また,JSONの仕様は「Informational(有益な情報)」という位置付けで,IETFのRFC4627にもまとめられています。