xml和json的比较

来源:互联网 发布:丽晶软件 编辑:程序博客网 时间:2024/06/05 10:36

以前玩ios的时候,从其他网站API拿一些数据的时候,拿到的都是Json格式,转安全之后,暂时还没有接触xml和json的问题。

最近在学一些和Ajax有关的内容,需要通过XMLHttpRequest对象向服务器发送请求和接受响应,这里就牵涉到,收到的响应是json格式or xml格式。

这里记录一些区别吧。

先上两种格式的 标准写法。


xml格式

<?xml version="1.0" encoding="utf-8"?>

<country>

  <name>中国</name>

  <province>

    <name>黑龙江</name>

    <citys>

      <city>哈尔滨</city>

      <city>大庆</city>

    </citys>   

  </province>

  <province>

    <name>广东</name>

    <citys>

      <city>广州</city>

      <city>深圳</city>

      <city>珠海</city>

    </citys>   

  </province>

  <province>

    <name>台湾</name>

    <citys>

       <city>台北</city>

       <city>高雄</city>

    </citys> 

  </province>

  <province>

    <name>新疆</name>

    <citys>

      <city>乌鲁木齐</city>

    </citys>

  </province>

</country>


json格式

var country =

        {

            name: "中国",

            provinces: [

            { name: "黑龙江", citys: { city: ["哈尔滨", "大庆"]} },

            { name: "广东", citys: { city: ["广州", "深圳", "珠海"]} },

            { name: "台湾", citys: { city: ["台北", "高雄"]} },

            { name: "新疆", citys: { city: ["乌鲁木齐"]} }

            ]

        }


总的来说,不管格式如何,两种语言都是为了让用户端接受数据 并对页面进行一定程度的修改。


可读性 ,可写性    个人认为XML有着更好的可读性,并不是说JSON可读性差,一边是规范的标签形式,一边是建议的语法。但是当数据量一大,JSON格式中各种括号的嵌套还是需要一定时间去理解的。

可扩展性 正因为XML有着很好的可读性和可写性,我们可以轻松的对XML进行扩展和修改。

带宽消耗 毫无疑问,在传输与带宽方面,JSON有着得天独厚的优势。从上面代码来看,XML语言中有大部分是重复的标记标签,而实际有用的信息内容则只占少数。而JSON则改善了这种情况,代码中绝大部分都是实际有用的信息内容,大大节省了带宽的消耗

解码(解析)难度 XML的解析得考虑子节点和父节点,让人头昏眼花,而JSON的解析难度几乎为0,有很多语言直接提供了JSON的层次解析。

流行度 XML已经被业界广泛的应用,而JSON才刚刚开始(本人感觉其实应用的挺广泛了),但是在Ajax这个领域,未来的发展一定是XML让位于JSON的。



原创粉丝点击