3 回答

TA貢獻(xiàn)1797條經(jīng)驗(yàn) 獲得超6個(gè)贊
1, JSON:JavaScript 對(duì)象表示法(javascript Object Notation)。
2, JSON 是存儲(chǔ)和交換(傳輸)文本信息的語(yǔ)法。類似 XML。
3, JSON 比 XML 更小、更快,更易解析。
?對(duì)于 AJAX 應(yīng)用程序來(lái)說(shuō),JSON 比 XML 更快更易使用:
?使用 XML
?讀取 XML 文檔
?使用 XML DOM 來(lái)循環(huán)遍歷文檔
?讀取值并存儲(chǔ)在變量中
?使用 JSON
?讀取 JSON 字符串
?用 eval() 處理 JSON 字符串
?然后再javascript中像操作對(duì)象一樣,操作json數(shù)據(jù)
?數(shù)據(jù)在名稱/值 對(duì)中
?數(shù)據(jù)由逗號(hào)分隔
?花括號(hào)保存對(duì)象
?方括號(hào)保存數(shù)組
?JSON 值可以是:
?數(shù)字(整數(shù)或浮點(diǎn)數(shù))
?字符串(在雙引號(hào)中)
?邏輯值(true 或 false)
?數(shù)組(在方括號(hào)中)
?對(duì)象(在花括號(hào)中)
?null
?JSON 數(shù)組在方括號(hào)中書(shū)寫(xiě):
?數(shù)組可包含多個(gè)對(duì)象:
?{ "employees": [ { "firstName":"John" , "lastName":"Doe" }, { "firstName":"Anna" , "lastName":"Smith" }, { "firstName":"Peter" , "lastName":"Jones" } ] }
?通過(guò) JavaScript,您可以創(chuàng)建一個(gè)對(duì)象數(shù)組,并像這樣進(jìn)行賦值:
?var employees = [ { "firstName":"Bill" , "lastName":"Gates" }, { "firstName":"George" , "lastName":"Bush" }, { "firstName":"Thomas" , "lastName": "Carter" } ]; 可以像這樣訪問(wèn) JavaScript 對(duì)象數(shù)組中的第一項(xiàng):
?employees[0].lastName;
?利用json數(shù)據(jù)格式,php向javascript回應(yīng)集合類的數(shù)據(jù)
?在php內(nèi)部json就是一個(gè)字符串,在javascript內(nèi)部json是一個(gè)對(duì)象
?在服務(wù)器端獲得的是一個(gè)數(shù)組,因此要使用json的數(shù)據(jù)格式將數(shù)據(jù)返回
?Php使用json_encode()函數(shù)完成數(shù)據(jù)向json格式的轉(zhuǎn)化
?我們的javascript就可以接收到j(luò)son格式的字符串,但是這個(gè)時(shí)候還是字符串呢
?將獲得的這個(gè)字符串,變成javascript對(duì)象,思路是讓我們字符串執(zhí)行以下就可以了
?在javascript中,我們使用eval(),可以讓字符串作為javascript代碼執(zhí)行,我們需要將執(zhí)行的代碼用括號(hào)括起來(lái)
?調(diào)用函數(shù),后面必須要加括號(hào),讓函數(shù)執(zhí)行必須加一個(gè)括號(hào)

TA貢獻(xiàn)1866條經(jīng)驗(yàn) 獲得超5個(gè)贊
B.容易與其他系統(tǒng)進(jìn)行遠(yuǎn)程交互,數(shù)據(jù)共享比較方便。
<2>.XML的缺點(diǎn)
A.XML文件龐大,文件格式復(fù)雜,傳輸占帶寬;
B.服務(wù)器端和客戶端都需要花費(fèi)大量代碼來(lái)解析XML,導(dǎo)致服務(wù)器端和客戶端代碼變得異常復(fù)雜且不易維護(hù);
C.客戶端不同瀏覽器之間解析XML的方式不一致,需要重復(fù)編寫(xiě)很多代碼;
D.服務(wù)器端和客戶端解析XML花費(fèi)較多的資源和時(shí)間。
添加回答
舉報(bào)