AJAX請求中 json格式的介紹

什么是json?

JSON是一種基于文本的數(shù)據(jù)交換方式,或者叫做數(shù)據(jù)描述格式,你是否該選用他首先肯定要關(guān)注它所擁有的優(yōu)點(diǎn)。

JSON的優(yōu)點(diǎn):

1、基于純文本,跨平臺傳遞極其簡單;

2、Javascript原生支持,后臺語言幾乎全部支持;

3、輕量級數(shù)據(jù)格式,占用字符數(shù)量極少,特別適合互聯(lián)網(wǎng)傳遞;

4、可讀性較強(qiáng),雖然比不上XML那么一目了然,但在合理的依次縮進(jìn)之后還是很容易識別的;

5、容易編寫和解析,當(dāng)然前提是你要知道數(shù)據(jù)結(jié)構(gòu);

JSON的缺點(diǎn)當(dāng)然也有,但在作者看來實在是無關(guān)緊要的東西,所以不再單獨(dú)說明。

JSON的格式或者叫規(guī)則:

JSON能夠以非常簡單的方式來描述數(shù)據(jù)結(jié)構(gòu),XML能做的它都能做,因此在跨平臺方面兩者完全不分伯仲。

1、JSON只有兩種數(shù)據(jù)類型描述符,大括號{}和方括號[],其余英文冒號:是映射符,英文逗號,是分隔符,英文雙引號""是定義符。

2、大括號{}用來描述一組“不同類型的無序鍵值對集合”(每個鍵值對可以理解為OOP的屬性描述),方括號[]用來描述一組“相同類型的有序數(shù)據(jù)集合”(可對應(yīng)OOP的數(shù)組)。

3、上述兩種集合中若有多個子項,則通過英文逗號,進(jìn)行分隔。

4、鍵值對以英文冒號:進(jìn)行分隔,并且建議鍵名都加上英文雙引號"",以便于不同語言的解析。

5、JSON內(nèi)部常用數(shù)據(jù)類型無非就是字符串、數(shù)字、布爾、日期、null 這么幾個,字符串必須用雙引號引起來,其余的都不用,日期類型比較特殊,這里就不展開講述了,只是建議如果客戶端沒有按日期排序功能需求的話,那么把日期時間直接作為字符串傳遞就好,可以省去很多麻煩。

json實例:

// 描述一個人

var person = {

"Name": "Bob",

"Age": 32,

"Company": "IBM",

"Engineer": true

}

// 獲取這個人的信息

var personAge = person.Age;

// 描述幾個人

var members = [

{

"Name": "Bob",

"Age": 32,

"Company": "IBM",

"Engineer": true

},

{

"Name": "John",

"Age": 20,

"Company": "Oracle",

"Engineer": false

},

{

"Name": "Henry",

"Age": 45,

"Company": "Microsoft",

"Engineer": false

}

]

// 讀取其中John的公司名稱

var johnsCompany = members[1].Company;

// 描述一次會議

var conference = {

"Conference": "Future Marketing",

"Date": "2012-6-1",

"Address": "Beijing",

"Members":

[

{

"Name": "Bob",

"Age": 32,

"Company": "IBM",

"Engineer": true

},

{

"Name": "John",

"Age": 20,

"Company": "Oracle",

"Engineer": false

},

{

"Name": "Henry",

"Age": 45,

"Company": "Microsoft",

"Engineer": false

}

]

}

// 讀取參會者Henry是否工程師

var henryIsAnEngineer = conference.Members[2].Engineer;

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容