基本概念
- JSON:JavaScript對象表示法(JavaScript Object Notation)智润;
- JSON是存儲和交換文本信息的語法采桃,類型XML况既。采用鍵值對的方式來阻止數(shù)據(jù)碍讯,易于閱讀和編寫西轩,易于機(jī)器解析和生成开伏;
- JSON是獨(dú)立于語言的,只要遵循JSON的規(guī)則遭商,其他語言也可以解析JSON固灵。
JSON與XML的對比
- JSON的長度遠(yuǎn)小于XML(描述相同的數(shù)據(jù),JSON使用的字符更少)
- 由于JSON描述的字符更少劫流,讀寫速度更快
- JSON可以使用JavaScript內(nèi)建的方法直接進(jìn)行解析巫玻,轉(zhuǎn)換為JavaScript對象。
JSON的語法規(guī)則
- 書寫格式:
"key": "value"
- JSON的
value
類型: -
number
:12
祠汇,12.3
-
string
:"wocale"
-
boolean
:true
仍秤、false
"null"
-
object
:{ }
-
數(shù)組
:[ ]
{
"staff": [
{"name": "洪七", "age": 70},
{"name": "郭靖", "age": 35},
{"name": "黃蓉", "age": 30}
]
}
JSON解析
-
eval()
和JSON.parse()
兩種方法 -
eval()
方法很危險(xiǎn),不會檢查JSON數(shù)據(jù)是否合法可很,容易執(zhí)行惡意代碼诗力。**在實(shí)際過程中最好使用JSON.parse()
方法使用。
var jsondata = {
"staff": [
{"name": "洪七", "age": 70},
{"name": "郭靖", "age": 35},
{"name": "黃蓉", "age": 30}
]
};
var jsonobj = JSON.parse(jsondata);
console.log(jsonobj.staff[1].name); //郭靖
JSON格式化校驗(yàn)工具------JSONLint
用jQuery實(shí)現(xiàn)Ajax
jQuery.ajax([settings])
:
-
type
:請求類型我抠,"POST"
苇本、"GET"
,默認(rèn)為"GET"
-
url
:發(fā)送請求的地址 -
data
:一個(gè)對象菜拓,連同請求發(fā)送到服務(wù)器的數(shù)據(jù) -
dataType
:預(yù)期服務(wù)器返回的數(shù)據(jù)格式瓣窄。如果不指定,jQuery將自動根據(jù)HTTP
包的MIME
信息來智能判斷纳鼎,一般采用json格式可以將其設(shè)置為"json"
俺夕。 -
success()
:一個(gè)方法裳凸,請求成功后的回調(diào)函數(shù)。傳入返回后的數(shù)據(jù)劝贸、響應(yīng)值以及包含成功代碼的字符串 -
error()
:一個(gè)方法姨谷,請求失敗時(shí)調(diào)用此函數(shù)。傳入XMLHttpRequest
對象