JSON(JavaScript. Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于
C语言家族的习惯(包括C,
C++,
C#,
Java, JavaScript,
Perl,
Python等)。这些特性使JSON成为理想的数据交换语言。
JSON构建的结构: 1. “名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),
字典(dictionary),
哈希表(hash table),有键列表(keyed list),或者关联
数组 (associative array)。
2. 值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。
这些都是常见的
数据结构。事实上大部分现代
计算机语言都以某种形式支持它们。这使得一种数据格式在同样基于这些结构的
编程语言之间交换成为可能。
JSON的具体形式 1、对象是一个无序的“‘名称/值’对”集合。一个对象以“{”开始,以“}”结束。每个“名称”后跟一个“:”,“‘名称/值’对”之间使用“,”分隔。
2、数组是值(value)的有序集合。一个数组以“[”开始,“]”结束。值之间使用“,”分隔。
3、值(value)可以是双引号括起来的字符串(String)、数值(number)、true、false、null、对象(object)或者数组(array)。这些结构可以嵌套。
4、字符串(string)是由双引号包围的任意数量Unicode字符的集合,使用反斜体转义。一个字符(character)即一个单独的字符串(characeter string).
JSON与XML的比较 ◆
可读性
JSON和XML的可读性可谓不相上下,一边是建议的语法,一边是规范的标签形式,很难分出胜负。
◆
可扩展性
XML天生有很好的扩展性,JSON当然也有,没有什么是XML能扩展,JSON不能的。
◆
编码难度
XML有丰富的编码工具,比如Dom4j、JDom等,JSON也有json.org提供的工具,但是JSON的编码明显比XML容易许多,即使不借助工具也能写出JSON的代码,可是要写好XML就不太容易了。
◆
解码难度
XML的解析得考虑子节点父节点,让人头昏眼花,而JSON的解析难度非常的难。不知道json的开发者脑袋是不是注水了。
◆
实例比较
XML和JSON都使用结构化方法来标记数据,下面来做一个简单的比较。
现假设有一个用户数据包括:用户名、密码、所在部门、性别、年龄。
用XML表示如下:
张三
123456
技术部
男
30
用JSON表示如下:
{
"name":"张三",
"password":"123456",
"department":"技术部",
"sex":"男",
"old":30
}
与XML一样,JSON也是基于文本的,且它们都使用Unicode编码,同样具有可读性。XML比较适合于标记文档,而JSON却更适合于时行数据交换处理。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22434610/viewspace-614951/
,如需转载,请注明出处,否则将追究法律责任。