第1回 JSONってなにもの? その他1
来源:互联网 发布:黑马程序员ios视频 编辑:程序博客网 时间:2024/04/27 23:26
JSONとは何か?
JSONとはJavaScript Object Notationの略で、XMLなどと同様のテキストベースのデータフォーマットです。
その名前の由来の通りJSONはJavaScriptのオブジェクト表記構文のサブセットとなっており、XMLと比べると簡潔に構造化されたデータを記述することができるため、記述が容易で人間が理解しやすいデータフォーマットと言えます。
なお、JSONは2006年に「RFC 4627(http://www.rfc-editor.org/rfc/rfc4627.txt)」として公開されています。
例としてXMLとJSONで同じデータを記述したものをリスト1とリスト2に示します(図1)。
リスト1のXMLではすべての情報をタグで囲んだテキストノードとして記述していますが、XMLでデータを表現する場合、データの記述方法として属性とテキストノードの使い分けが必要になります。
JSONの場合、そのようなことを気にする必要はありません。また、XMLには閉じタグが必要となりますが、JSONの場合カッコに対応する閉じカッコ以外は不要です。JSONはXMLと比べるとタイプ数も少なく、きちんとインデントされていれば可読性も高いことがわかります。
図1:同データのXMLとJSONの記述例とAjaxの概念図(クリックで拡大)JSONの利用シーン
JSONは前述の通り、JavaScriptのサブセットなのでeval()関数で評価することでJavaScriptオブジェクトに変換することができるという特徴があります。eval()関数は引数で渡された文字列をJavaScriptコードとして評価し、その結果を返します。
このようにJavaScriptとの親和性の高さから現在ではAjaxでのデータ交換フォーマットとして広く利用されるようになりました。
AjaxはもともとAsynchronous JavaScript + XMLの略で、Webブラウザ上で動作するJavaScriptでサーバからXMLデータを取得し、取得したデータをDHTMLを活用してコンテンツに動的に反映するという手法です(図1)。
このXMLの代わりにJSONが使われているわけです。JSONを利用することで冗長なXMLと比べて通信時のデータ量を削減できるなどのメリットもあります。
AjaxのサーバサイドはJavaやPHPなどの言語を利用して実装されることが多いのですが、すでに主要なプログラミング言語にはJSONの生成や読み込みを行うライブラリが存在するため、JavaScriptに限らず言語をこえたデータ交換のためのデータフォーマットとしてJSONを利用することができます。
引用:http://thinkit.co.jp/article/70/1
- 第1回 JSONってなにもの? その他1
- 第1回 JSONってなにもの? その他2
- 第1回 JSONってなにもの?その他3
- 第2回 JSONを使ってみよう!その他1
- 第2回 JSONを使ってみよう! その他2
- 第2回 JSONを使ってみよう!その他3
- 第3回 Web APIって何? その他1
- 第3回 Web APIって何? その他2
- 第3回 Web APIって何? その他3
- 她拒绝了他N次,第N+1次,他拒绝了她
- 离开他第一天
- 《他和他的质量管理》--51Testing专访(1)
- 他只得了1%,我们不能雇用他
- DB2 NoSQL JSON 功能,第 1 部分: DB2 NoSQL JSON 介绍
- 【第1篇】通过json-lib把字符串转换成json的使用
- 与LSGO一起学“第1章 初识C++(1.5 C++与其他语言的区别)”
- 第一篇博客及其他
- 阿凡提和他的小毛驴(1)
- Android系统组件 小练习
- Extreme6808策略路由
- 对内存的认识
- 基于Mapabc API的周边查询应用
- hdu 1010 Tempter of the Bone(深搜)
- 第1回 JSONってなにもの? その他1
- 杭电ACM Steps 第一题,a+b,java实现
- 游戏中抛物线的计算
- 代码测试之内存泄露
- 安装失败,您的机器不支持add-on属性
- 第1回 JSONってなにもの? その他2
- 第1回 JSONってなにもの?その他3
- 第2回 JSONを使ってみよう!その他1
- Android 开发之使用Eclipse Debug调试详解