JSON与XML语言比较
JSON和XML都是文本格式语言,都被经常用于数据交换和网络传输,那么它们有什么区别呢?下面我们对这两种语言进行比较。
1. 可扩展性
JSON和XML都有很好的扩展性,不过JSON与JavaScript语言的结合更紧密,在JavaScript语言中使用JSON可谓是无缝连接。
2. 可读性
JSON和XML的可读性可谓不相上下,一个是简洁的语法,一个是规范的标签形式,很难分出胜负。
3. 编码难度
XML出现的时间比JSON早,能够处理XML语言的编码工具很丰富,不过JSON语言出现之后发展迅速,现在也具有了与XML相媲美的处理工具。在不使用工具的情况下,熟练的开发人员同样能够轻松写出想要的XML文档和JSON文档,不过XML文档需要的字符量更多。
4. 解码难度
JSON和XML都是可扩展性的结构,如果不知道文档结构,解析文档是非常不方便的。所以最好在知道文档结构的情况下进行解析,其实,在开发过程中,只要看到文档的字符串,就可以明白它的结构。
5. 有效数据率
由于省却了大量的标签,JSON的有效数据率比XML高得多。我们使用一个实例进行比较,用XML表示中国部门省市的信息,如下所示。
<?xml version="1.0" encoding="utf-8"?>
<country>
<name>中国</name>
<province>
<name>湖北</name>
<cities>
<city>武汉</city>
<city>襄阳</city>
</cities>
</province>
<province>
<name>辽宁</name>
<cities>
<city>沈阳</city>
<city>大连</city>
<city>鞍山</city>
</cities>
</province>
</country>
同样的数据,使用JSON表示如下:
{
"name": "中国",
"province": [{
"name": "湖北",
"cities": {
"city": ["武汉", "襄阳"]
}}, {
"name": "辽宁",
"cities": {
"city": ["沈阳", "大连", "鞍山"]
}
}]
}
由XML和JSON的对比可知,JSON的语法格式简单,层次结构清晰,比XML更易于阅读。并且,由于它占用的字符量少,用于网络数据传输时,能节约带宽,提高传输效率。