|
我們知道AJAX技術(shù)能夠使得每一次請求更加迅捷,對于每一次請求返回的不是整個頁面,也僅僅是所需要返回的數(shù)據(jù)。通常AJAX通過返回XML格式的數(shù)據(jù),然后再通過客戶端復(fù)雜的JavaScript腳本解析和渲染這些XML格式的數(shù)據(jù)。
JSON(讀Jason)是為了能夠使得數(shù)據(jù)格式成為一種標準,更簡單的被JavaScript解析。
優(yōu)點
1、輕量級的數(shù)據(jù)交換格式
2、人們讀寫更加容易
3、易于機器的解析和生成
4、能夠通過JavaScript中eval()函數(shù)解析JSON
5、JSON支持多語言。包括:ActionScript, C, C#, ColdFusion, E, Java, JavaScript, ML, Objective CAML, Perl, php, Python, Rebol, Ruby, and Lua.
語法
JSON語法是一種用于傳輸和生成數(shù)據(jù)的協(xié)定,很類似于C家族的語言,所以很容易被C家族的語言所解析。
對象:對象包含在{}之間
屬性:采用Key-Value對來表示。屬性之間使用逗號分開。 string : value
數(shù)組:數(shù)組存放在[]之間 [ elements ]
元素:元素之間用逗號分開
值:值可以是字符串,數(shù)字,對象,數(shù)組,true,false,null
例子:
JSON
[
{
name:"Michael",
email:"[email protected]",
homepage:"http://www.jialing.NET"
},
{
name:"John",
email:"[email protected]",
homepage:"http://www.jobn.com"
},
{
name:"Peggy",
email:"[email protected]",
homepage:"http://www.peggy.com"
}
]
事實上google maps就沒有采用XML傳遞數(shù)據(jù),而是采用了JSON方案。
JSON的另外一個優(yōu)勢是"跨域性",例如你在網(wǎng)頁里使用
<script type="text/Javascript" src="http://www.yyy.com/some.js">
是完全可行的,這就意味著你可以跨域傳遞信息。而使用XMLHttpRequest卻獲取不了跨域的信息,這是Javascript內(nèi)部的安全性質(zhì)所限制的。
JSON能完全取代XML嗎?當(dāng)然不能,原因就在于XML的優(yōu)勢:通用性。要使服務(wù)器端產(chǎn)生語法合格的Javascript代碼并不是很容易做到的,這主要發(fā)生在比較龐大的系統(tǒng),服務(wù)器端和客戶端有不同的開發(fā)人員。
JavaScript技術(shù):json簡單介紹,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。