XML与JSon区别

在分析之前先简单介绍一下这两者:
什么是 XML(可扩展标记语言)?
  • XML 指可扩展标记语言(EXtensible Markup Language)
  • XML 是一种标记语言,很类似 HTML
  • XML 的设计宗旨是传输数据,而非显示数据
  • XML 标签没有被预定义。您需要自行定义标签。
  • XML 被设计为具有自我描述性。
  • XML 是 W3C 的推荐标准
  • XML 没什么特别的,它仅仅是纯文本而已,是SGML的一个简化版本,有能力处理纯文本的软件都可以处理 XML。

什么是 JSON ?

  • JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation)
  • JSON 是轻量级的文本数据交换格式
  • JSON 独立于语言 *
  • JSON 具有自我描述性,更易理解

* JSON 使用 JavaScript 语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。


  • 特点:
    • 轻量级的数据交换格式
    • 人们读写更加容易
    • 易于机器的解析和生成
    • 能够通过JavaScript中eval_r()函数解析JSON
    • JSON支持多语言

语法:

  • JSON语法是一种用于传输和生成数据的协定,很类似于C家族的语言,所以很容易被C家族的语言所解析。
  • 对象:对象包含再{}之间
  • 属性:采用Key-Value对来表示。属性之间使用逗号分开。  string : value 
  • 数组:数组存放再[]之间   [ elements ] 
  • 元素:元素之间用逗号分开
  • 值:值可以是字符串,数字,对象,数组,true,false,null
两者的对比:
  • 在可读性方面,JSON和XML的数据可读性基本相同。JSON和XML的可读性可谓不相上下,一边是建议的语法,一边是规范的标签形式,很难分出胜负。
  • 在可扩展性方面,XML天生有很好的扩展性,JSON当然也有,没有什么是XML能扩展,JSON不能的。
  • 在编码难度方面,XML有丰富的编码工具,比如Dom4j、JDom等,JSON也有json.org提供的工具,但是JSON的编码明显比XML容易许多,即使不借助工具也能写出JSON的代码,可是要写好XML就不太容易了。
  • 在解码难度方面,XML的解析得考虑子节点父节点,让人头昏眼花,而JSON的解析难度几乎为0。这一点XML输的真是没话说。
  • 在流行度方面,XML已经被业界广泛的使用,而JSON才刚刚开始,但是在Ajax这个特定的领域,未来的发展一定是XML让位于JSON。到时Ajax应该变成Ajaj(Asynchronous Javascript and JSON)了。
  • JSON和XML同样拥有丰富的解析手段。
  • JSON相对于XML来讲,数据的体积小。
  • JSON与JavaScript的交互更加方便。
  • JSON对数据的描述性比XML较差。
  • JSON的速度要远远快于XML。
  • XML跟多侧重与对象和结构,JSON则更适用与数据交互




原文地址:https://www.cnblogs.com/Zhuangsd/p/5655363.html