内容へ移動
Cat Paw Software
ユーザ用ツール
ログイン
サイト用ツール
検索
ツール
文書の表示
以前のリビジョン
バックリンク
最近の変更
メディアマネージャー
サイトマップ
ログイン
>
最近の変更
メディアマネージャー
サイトマップ
トレース:
json
この文書は読取専用です。文書のソースを閲覧することは可能ですが、変更はできません。もし変更したい場合は管理者に連絡してください。
====== JSON ====== [[http://www.json.org/json-ja.html|JSON]] は JavaScript Simple Object Notation の略称で JavaScript のオブジェクト表現を利用したテキストベースのデータ交換フォーマットである。JavaScriptのみならず各種言語でJSONフォーマットを利用するライブラリが用意されているのでXMLより手軽にデータ交換ができる。JavaScriptとの相性が抜群に良いため、WebアプリケーションのAjaxでのレスポンスデータ形式としてよく利用される。 MIME TYPE は RFC 4627 によると application/json である。ファイルの拡張子は .json である。 フォーマット <code javascript> {"プロパティ名":"値" [, "プロパティ名":"値" ] } </code> プロパティ名は二重引用符で囲む(JavaScriptのオブジェクト表現では不要なため、忘れがちでエラーの原因となるので注意)。値が文字列の場合は同じく二重引用符で囲む。値が数値の場合は不要。複数のプロパティを持つ時は , で区切る。配列は [ ] で表現する。 <code javascript> { "hoge" : "ほげほげ", // 文字列 "fuga" : 0.1, // 数値 "piyo" : [1,2,3,4], // 配列 "moge" : { "str":"あ", "num": 5 }, // ハッシュ、辞書、連想配列 "buri" : true, // 真偽値 true or false "gebe" : null // NULL } </code> 文字列はUTF-8でエンコードする。日付データは 2010-02-14T12:35:31.200Z のようなISO8601形式の文字列で交換することが望ましい。 ===== JavaScriptでの利用 ===== JavaScriptのオブジェクト表現であるため、JSONフォーマットの文字列をevalすれば直接オブジェクトに変換できるが、意図しない関数を潜り込ませる事ができる等のセキュリティ上の観点から推奨されない。JSON2ライブラリを使ってパースすることが推奨される。 <code javascript> var obj = JSON.parse('{"hoge":"ほげほげ"}'); alert(obj.hoge); // 'ほげほげ' と表示 </code> オブジェクトをJSON文字列に変換するにはstringifyを使う <code javascript> var json = JSON.stringify({"hoge":"ほげほげ"}); alert(json); </code> [[http://www.json.org/json2.js|JSON2ライブラリ]] ==== ネイティブサポート ==== Firefox 3 等のブラウザではJSONがネイティブサポートされており、JSON2ライブラリなしで全く同じコードで処理できる。JSON2ライブラリは、既にJSONオブジェクトが定義されている場合は再定義しないので、JSON2を読み込んでもネイティブ実装が使用される。 2010年2月現在、アップデートによってIE8がネイティブ対応し、主要なブラウザはすべてJSONをサポートした。 ==== ライブラリのサポート ==== jQueryやprototype.jsなどはjson形式のデータをAjaxで受け取って利用可能。 ==== 利用法 ==== HTML5のクライアントストレージには文字列しか保存できないので、オブジェクトを保存する場合には一度JSON文字列に変換するといいだろう。
json.txt
· 最終更新: 2010/02/24 17:11 by
127.0.0.1
ページ用ツール
文書の表示
以前のリビジョン
バックリンク
文書の先頭へ