json數(shù)據(jù)格式和xml數(shù)據(jù)格式的區(qū)別是什么?這個(gè)問(wèn)題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見(jiàn)到的。希望通過(guò)這個(gè)問(wèn)題能讓你收獲頗深。下面是小編給大家?guī)?lái)的參考內(nèi)容,讓我們一起來(lái)看看吧!
為富拉爾基等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及富拉爾基網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都做網(wǎng)站、網(wǎng)站建設(shè)、富拉爾基網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專(zhuān)業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!JSON(JavaScript Object Notation) 是一種輕量級(jí)的數(shù)據(jù)交換格式。易于人閱讀和編寫(xiě),同時(shí)也易于機(jī)器解析和生成。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一個(gè)子集。 JSON采用完全獨(dú)立于語(yǔ)言的文本格式,但是也使用了類(lèi)似于C語(yǔ)言家族的習(xí)慣(包括C, C++, C#, Java, JavaScript, Perl, Python等)。這些特性使JSON成為理想的數(shù)據(jù)交換語(yǔ)言。
JSON與XML的比較
◆可讀性
JSON和XML的可讀性可謂不相上下,一邊是簡(jiǎn)易的語(yǔ)法,一邊是規(guī)范的標(biāo)簽形式,很難分出勝負(fù)。
◆可擴(kuò)展性
XML天生有很好的擴(kuò)展性,JSON當(dāng)然也有,沒(méi)有什么是XML能擴(kuò)展,JSON不能的。不過(guò)JSON在Javascript主場(chǎng)作戰(zhàn),可以存儲(chǔ)Javascript復(fù)合對(duì)象,有著xml不可比擬的優(yōu)勢(shì)。
◆編碼難度
XML有豐富的編碼工具,比如Dom4j、JDom等,JSON也有提供的工具。無(wú)工具的情況下,相信熟練的開(kāi)發(fā)人員一樣能很快的寫(xiě)出想要的xml文檔和JSON字符串,不過(guò),xml文檔要多很多結(jié)構(gòu)上的字符。
◆解碼難度
XML的解析方式有兩種:
一是通過(guò)文檔模型解析,也就是通過(guò)父標(biāo)簽索引出一組標(biāo)記。
例如:xmlData.getElementsByTagName_r("tagName"),但是這樣是要在預(yù)先知道文檔結(jié)構(gòu)的情況下使用,無(wú)法進(jìn)行通用的封裝。
另外一種方法是遍歷節(jié)點(diǎn)(document 以及 childNodes)。這個(gè)可以通過(guò)遞歸來(lái)實(shí)現(xiàn),不過(guò)解析出來(lái)的數(shù)據(jù)仍舊是形式各異,往往也不能滿足預(yù)先的要求。
凡是這樣可擴(kuò)展的結(jié)構(gòu)數(shù)據(jù)解析起來(lái)一定都很困難。
JSON也同樣如此。如果預(yù)先知道JSON結(jié)構(gòu)的情況下,使用JSON進(jìn)行數(shù)據(jù)傳遞簡(jiǎn)直是太美妙了,可以寫(xiě)出很實(shí)用美觀可讀性強(qiáng)的代碼。如果你是純粹的前臺(tái)開(kāi)發(fā)人員,一定會(huì)非常喜歡JSON。但是如果你是一個(gè)應(yīng)用開(kāi)發(fā)人員,就不是那么喜歡了,畢竟 xml才是真正的結(jié)構(gòu)化標(biāo)記語(yǔ)言,用于進(jìn)行數(shù)據(jù)傳遞。
而如果不知道JSON的結(jié)構(gòu)而去解析JSON的話,那簡(jiǎn)直是噩夢(mèng)。費(fèi)時(shí)費(fèi)力不說(shuō),代碼也會(huì)變得冗余拖沓,得到的結(jié)果也不盡人意。但是這樣也不影響眾多前臺(tái)開(kāi)發(fā)人員選擇JSON。因?yàn)閖son.js中的toJSONString()就可以看到 JSON的字符串結(jié)構(gòu)。當(dāng)然不是使用這個(gè)字符串,這樣仍舊是噩夢(mèng)。常用JSON的人看到這個(gè)字符串之后,就對(duì)JSON的結(jié)構(gòu)很明了了,就更容易的操作 JSON。
以上是在Javascript中僅對(duì)于數(shù)據(jù)傳遞的xml與JSON的解析。在 Javascript地盤(pán)內(nèi),JSON畢竟是主場(chǎng)作戰(zhàn),其優(yōu)勢(shì)當(dāng)然要遠(yuǎn)遠(yuǎn)優(yōu)越于xml。如果JSON中存儲(chǔ)Javascript復(fù)合對(duì)象,而且不知道其結(jié)構(gòu)的話,我相信很多程序員也一樣是哭著解析JSON的。
◆實(shí)例比較
XML和JSON都使用結(jié)構(gòu)化方法來(lái)標(biāo)記數(shù)據(jù),下面來(lái)做一個(gè)簡(jiǎn)單的比較。
用XML表示中國(guó)部分省市數(shù)據(jù)如下:
<?xml version="1.0" encoding="utf-8"?> <country> <name>中國(guó)</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>臺(tái)灣</name> <citys> <city>臺(tái)北</city> <city>高雄</city> </citys> </province> <province> <name>新疆</name> <citys> <city>烏魯木齊</city> </citys> </province> </country> 用JSON表示如下: { name:"中國(guó)", province:[ { name:"黑龍江", citys:{ city:["哈爾濱","大慶"] } }, { name:"廣東", citys:{ city:["廣州","深圳","珠海"] } }, { name:"臺(tái)灣", citys:{ city:["臺(tái)北","高雄"] } }, { name:"新疆", citys:{ city:["烏魯木齊"] } } ] }
編碼的可讀性,xml有明顯的優(yōu)勢(shì),畢竟人類(lèi)的語(yǔ)言更貼近這樣的說(shuō)明結(jié)構(gòu)。json讀起來(lái)更像一個(gè)數(shù)據(jù)塊,讀起來(lái)就比較費(fèi)解了。不過(guò),我們讀起來(lái)費(fèi)解的語(yǔ)言,恰恰是適合機(jī)器閱讀,所以通過(guò)json的索引.province[0].name就能夠讀取“黑龍江”這個(gè)值?! 【幋a的手寫(xiě)難度來(lái)說(shuō),xml還是舒服一些,好讀當(dāng)然就好寫(xiě)。不過(guò)寫(xiě)出來(lái)的字符JSON就明顯少很多。去掉空白制表以及換行的話,JSON就是密密麻麻的有用數(shù)據(jù),而xml卻包含很多重復(fù)的標(biāo)記字符。
感謝各位的閱讀!看完上述內(nèi)容,你們對(duì)json數(shù)據(jù)格式和xml數(shù)據(jù)格式的區(qū)別是什么大概了解了嗎?希望文章內(nèi)容對(duì)大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計(jì)公司行業(yè)資訊頻道。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
文章標(biāo)題:json數(shù)據(jù)格式和xml數(shù)據(jù)格式的區(qū)別是什么-創(chuàng)新互聯(lián)
網(wǎng)站URL:http://aaarwkj.com/article32/pjisc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開(kāi)發(fā)、網(wǎng)站建設(shè)、做網(wǎng)站、網(wǎng)站設(shè)計(jì)、微信小程序、品牌網(wǎng)站設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容