JSON是JavaScript Object Notation的首字母缩写,是一种轻量级的存储与交换文本信息的语法,与xml类似。
与 XML 相同之处
- JSON 是纯文本
- JSON 具有"自我描述性"(人类可读)
- JSON 具有层级结构(值中存在值)
- JSON 可通过 JavaScript 进行解析
- JSON 数据可使用 AJAX 进行传输
与 XML 不同之处
- 没有结束标签
- 更短
- 读写的速度更快
- 能够使用内建的 JavaScript eval() 方法进行解析
- 使用数组
- 不使用保留字
以下代码表示了相同的东西
json语法:
{
"sites": [
{ "name":"baidu" , "url":"www.baidu.com" },
{ "name":"google" , "url":"www.google.com" },
{ "name":"bing" , "url":"www.bing.com" }
]
}
xml语法
<sites>
<site>
<name>baidu</name> <url>www.baidu.com</url>
</site>
<site>
<name>google</name> <url>www.google.com</url>
</site>
<site>
<name>bing</name> <url>www.bing.com</url>
</site>
</sites>
可以看到,表示相同的内容json语法相对更加简洁。
因此对于程序来说,JSON 比 XML 更小、更快,更易解析,并且JSON 独立于语言,JSON 使用 Javascript语法来描述数据对象,但是JSON 仍然独立于语言和平台,JSON 解析器和 JSON 库支持许多不同的编程语言,同时目前非常多的动态(PHP,JSP,.NET)编程语言都支持JSON。对于人们来说,JSON 还具有自我描述性,更方便人们理解。