1. 程式人生 > >XML、HTML、JSON對比

XML、HTML、JSON對比

服務器端 珠海 XML name 註意 最簡 asc post ext

HTML(作用:網頁)

  優點:1、由於它本身就是所期望的數據格式,可以直接插入頁面,不用解析;

     2、可讀性高。

  缺點:1、如果要使用AJAX更新一篇文章的多個內容,HTML數據格式不合適;

XML(作用:一般用作配置文件,數據傳輸格式):處理xml格式的數據分三步,首先解析xml文檔,然後構建節點,最後把節點放入要顯示的HTML頁面中。

  優點:1、不必把數據強加到已定義好的格式中(相對於html),而是要為數據自定義合適的標記;

     2、XML是一種通用的數據格式。

  缺點:1、如果文檔來自於服務器,就必須保證文檔含有正確的首部信息(如:<?xml version="1.0" encoding="utf-8"?> );

例:

<?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>
    <province>
        <name>臺灣</name>
        <cities>
            <city>臺北</city>
            <city>高雄</city>
        </cities>
    </province>
    <province>
        <name>新疆</name>
        <cities>
            <city>烏魯木齊</city>
        </cities>
    </province>
</country>

JSON(作用:JSON與XML很相似)

  優點:1、比XML體積更小;

     2、在網上傳輸時,相比XML可以更省流量;

     3、相比XML,JSON不需要從服務器端發送含有特定內容類型的首部信息。

缺點:1、語義性差,沒XML直觀。

例:

  

{
    "name": "中國",
    "province": [{
        "name": "黑龍江",
        "cities": {
            "city": ["哈爾濱", "大慶"]
        }
    }, {
        "name": "廣東",
        "cities": {
            "city": ["廣州", "深圳", "珠海"]
        }
    }, {
        "name": "臺灣",
        "cities": {
            "city": ["臺北", "高雄"]
        }
    }, {
        "name": "新疆",
        "cities": {
            "city": ["烏魯木齊"]
        }
    }]
}




註意:1、XML 解析是將 XML 數據從其序列化字符串格式轉換為分層格式的過程。

2、JSON是JavaScript原生格式,這意味著在JavaScript中處理JSON數據不需要任何特殊的API或工具包。



三種格式的對比總結

(1)如果應用程序不需要與其它應用程序共享數據的時候,優先選擇HTML,使用HTML片段來返回數據最簡單。
(2)如果數據需要重用,優先選擇JSON,其在性能和文件大小方面有一定優勢。
(3)當遠程應用程序未知時,優先選擇XML,因為XML是web服務的領域的“世界語言”。

XML、HTML、JSON對比