JSON 與XML相比優點
關於JSON的語法規則可以參閱JSON 語法規則一章節。
基於自身的特點與優勢,JSON成為當前應用最為廣泛的資料傳輸格式。
一.JSON與XML各自特點:
在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> </cities> </province> </country>
上面是一段簡單的XML程式碼,分析如下:
(1).XML是純文字形式,適合於資料傳輸。
(2).結構層次清晰,比較適合閱讀。
(3).具有嚴格的標籤巢狀與閉合結構,這會導致其傳輸的有效資料比重下降,效率降低。
將上述程式碼以JSON表示:
[JavaScript] 純文字檢視 複製程式碼{ "name": "中國", "province": [{ "name": "山東", "cities": { "city": ["青島", "濟南"] } }, { "name": "河北", "cities": { "city": ["石家莊", "邯鄲"] } }] }
上面是JSON資料,簡單分析如下:
(1).JSON是純文字形式,適合於資料傳輸。
(2).結構層次清晰,比較適合閱讀。
(3).沒有所謂的閉合標籤等資料外多餘的東西。
(4).JSON是JavaScript的子集,且內建了對JSON操作的方法。
二.JSON與XML比較:
1.兩者共同點:
(1).都是純文字格式。
(2).結構層次都比較清晰適合於閱讀。
2.JSON的優勢:
(1).JSON沒有嚴格的標籤巢狀閉合結構,有效資料的佔比高,傳輸效率不高。
(2).JSON是JavaScript的子集,同時內建了對其操作的方法,操作比較簡單方便。
(3).XML雖然本身結構簡單,但是具有眾多規範,例如上DTD、XSD、XPath、XSLT等,學習成本高。
三.簡單的例子:
實際應用中,經常使用AJAX配合JSON來完成任務,比與xml配合容易很多,速度也更快。
如果使用XML,需要讀取XML文件,然後使用XML DOM來迴圈遍歷文件並讀取值並儲存在變數中。
如果使用JSON,只需要獲取JSON字串,然後通過內建的方法轉換為需要的物件,然後進行相關操作即可。
相關文章
- JSON相比XML優劣勢JSONXML
- insertAdjacentHTML() 與 innerHTML 相比優點HTML
- XML 與 JSON 優劣對比XMLJSON
- XML與JSONXMLJSON
- Spark與Hadoop MapReduce相比,有哪些優點你知道嗎?SparkHadoop
- XML與JSON(在更)XMLJSON
- 與其他系統相比,Linux系統有什麼優點和缺點?Linux
- json與xml的區別JSONXML
- [DB]PostgreSQL 與 MySQL 相比,優勢何在?MySql
- XML與JSON學習歸納XMLJSON
- 與HTML相比XHTML有什麼特點?HTML
- 解析XML和JSON內容的一點技巧XMLJSON
- 與HTML相比XHTML有什麼特點?(轉)HTML
- Service Worker cache 相比 HTTP cache 的一些優點HTTP
- 【盤點】Linux相比其他作業系統的5個優點!Linux作業系統
- SQLServer中XML與JSON應用比較SQLServerXMLJSON
- 熱點淺談:與傳統IT開發相比,低程式碼平臺有何優勢?
- JSON的特點和優勢JSON
- 再談JSON/XMLJSONXML
- JSON的優點簡單介紹JSON
- Linux與windows相比有何優勢,看完就明白了LinuxWindows
- xml字串轉JSON字串XML字串JSON
- Redis相比Memcached有哪些優勢?Redis
- MRAM與其他記憶體技術相比具有相對優勢記憶體
- 就Tim Bray對JSON和XML的比較的幾點看法JSONXML
- YAML & JSON &XML如何選擇YAMLJSONXML
- XML和JSON的介紹XMLJSON
- JavaScript JavaScript與XML——“XPath”的注意要點JavaScriptXML
- 什麼是IPv6?與IPv4相比,IPv6具備哪些技術優點?
- 串列埠通訊與其他通訊方式相比有什麼優勢?串列埠
- HTTPS 優點與缺點HTTP
- mysql之json型別與文字儲存json的優勢MySqlJSON型別
- 谷歌的grpc和facebook的相比thrift 有哪些優勢,又有哪些缺點?谷歌RPC
- .net相比java,有哪些特點呢?Java
- MyBatis和Hibernate相比,優勢在哪裡?MyBatis
- XML轉化為json工具類XMLJSON
- Protobuf 為啥比 JSON、XML 牛?JSONXML
- JSON和XML:不可同日而語JSONXML