教育行業(yè)A股IPO第一股(股票代碼 003032)

全國(guó)咨詢(xún)/投訴熱線(xiàn):400-618-4000

JSON和XML的區(qū)別:json和xml的優(yōu)缺點(diǎn)對(duì)比

更新時(shí)間:2020年10月07日16時(shí)22分 來(lái)源:傳智播客 瀏覽次數(shù):

JSON和XML都是文本格式語(yǔ)言,都被經(jīng)常用于數(shù)據(jù)交換和網(wǎng)絡(luò)傳輸,那么它們有什么區(qū)別呢?下面我們對(duì)這兩種語(yǔ)言進(jìn)行比較。

1.可擴(kuò)展性

JSON和XML都有很好的擴(kuò)展性,不過(guò)JSON與JavaScript語(yǔ)言的結(jié)合更緊密,在JavaScript語(yǔ)言中使用JSON可謂是無(wú)縫連接。

2.可讀性

JSON和XML的可讀性可謂不相上下,一個(gè)是簡(jiǎn)潔的語(yǔ)法,一個(gè)是規(guī)范的標(biāo)簽形式,很難分出勝負(fù)。

3.編碼難度

XML出現(xiàn)的時(shí)間比JSON早,能夠處理XML語(yǔ)言的編碼工具很豐富,不過(guò)JSON語(yǔ)言出現(xiàn)之后發(fā)展迅速,現(xiàn)在也具有了與XML相媲美的處理工具。在不使用工具的情況下,熟練的開(kāi)發(fā)人員同樣能夠輕松寫(xiě)出想要的XML文檔和JSON文檔,不過(guò)XML文檔需要的字符量更多。

4.解碼難度

JSON和XML都是可擴(kuò)展性的結(jié)構(gòu),如果不知道文檔結(jié)構(gòu),解析文檔是非常不方便的。所以最好在知道文檔結(jié)構(gòu)的情況下進(jìn)行解析,其實(shí),在開(kāi)發(fā)過(guò)程中,只要看到文檔的字符串,就可以明白它的結(jié)構(gòu)。

5.有效數(shù)據(jù)率

由于省卻了大量的標(biāo)簽,JSON的有效數(shù)據(jù)率比XML高得多。我們使用一個(gè)實(shí)例進(jìn)行比較,用XML表示中國(guó)部門(mén)省市的信息,如下所示。

<?xml version="1.0" encoding="utf-8"?>
<country>
  <name>中國(guó)</name>
  <province>
      <name>湖北</name>
     <cities>
       <city>武漢</city>
       <city>襄陽(yáng)</city>
     </cities>
  </province>
  <province>
     <name>遼寧</name>
     <cities>
       <city>沈陽(yáng)</city>
       <city>大連</city>
       <city>鞍山</city>
     </cities>
  </province>
</country>

同樣的數(shù)據(jù),使用JSON表示如下:

{
  "name": "中國(guó)",
  "province": [{
     "name": "湖北",
     "cities": {
       "city": ["武漢", "襄陽(yáng)"]
     }}, {
     "name": "遼寧",
     "cities": {
       "city": ["沈陽(yáng)", "大連", "鞍山"]
     }
  }]
}

猜你喜歡

XML是什么:可拓展標(biāo)記語(yǔ)言 

java培訓(xùn)之XML解析器介紹

Python培訓(xùn)課程

0 分享到:
和我們?cè)诰€(xiàn)交談!