?
本文檔使用 PHP中文網(wǎng)手冊(cè) 發(fā)布
JSON 語(yǔ)法是 JavaScript 語(yǔ)法的子集。
JSON 語(yǔ)法規(guī)則
JSON 語(yǔ)法是 JavaScript 對(duì)象表示法語(yǔ)法的子集。
數(shù)據(jù)在名稱(chēng)/值對(duì)中 數(shù)據(jù)由逗號(hào)分隔 花括號(hào)保存對(duì)象 方括號(hào)保存數(shù)組
JSON 名稱(chēng)/值對(duì)
JSON 數(shù)據(jù)的書(shū)寫(xiě)格式是:名稱(chēng)/值對(duì)。
名稱(chēng)/值對(duì)包括字段名稱(chēng)(在雙引號(hào)中),后面寫(xiě)一個(gè)冒號(hào),然后是值:
"firstName" : "John"
這很容易理解,等價(jià)于這條 JavaScript 語(yǔ)句:
firstName = "John"
JSON 值
JSON 值可以是:
數(shù)字(整數(shù)或浮點(diǎn)數(shù))
字符串(在雙引號(hào)中)
邏輯值(true 或 false)
數(shù)組(在方括號(hào)中)
對(duì)象(在花括號(hào)中)
null
JSON 對(duì)象
JSON 對(duì)象在花括號(hào)中書(shū)寫(xiě):
對(duì)象可以包含多個(gè)名稱(chēng)/值對(duì):
{ "firstName":"John" , "lastName":"Doe" }
這一點(diǎn)也容易理解,與這條 JavaScript 語(yǔ)句等價(jià):
firstName = "John" lastName = "Doe"
JSON 數(shù)組
JSON 數(shù)組在方括號(hào)中書(shū)寫(xiě):
數(shù)組可包含多個(gè)對(duì)象:
{ "employees": [ { "firstName":"John" , "lastName":"Doe" }, { "firstName":"Anna" , "lastName":"Smith" }, { "firstName":"Peter" , "lastName":"Jones" } ] }
在上面的例子中,對(duì)象 "employees" 是包含三個(gè)對(duì)象的數(shù)組。每個(gè)對(duì)象代表一條關(guān)于某人(有姓和名)的記錄。
JSON 使用 JavaScript 語(yǔ)法
因?yàn)?JSON 使用 JavaScript 語(yǔ)法,所以無(wú)需額外的軟件就能處理 JavaScript 中的 JSON。
通過(guò) JavaScript,您可以創(chuàng)建一個(gè)對(duì)象數(shù)組,并像這樣進(jìn)行賦值:
實(shí)例
var employees = [ { "firstName":"John" , "lastName":"Doe" }, { "firstName":"Anna" , "lastName":"Smith" }, { "firstName":"Peter" , "lastName": "Jones" } ];
可以像這樣訪問(wèn) JavaScript 對(duì)象數(shù)組中的第一項(xiàng):
employees[0].lastName;
返回的內(nèi)容是:
Doe
可以像這樣修改數(shù)據(jù):
employees[0].firstName = "Jonatan";
在下面的章節(jié),您將學(xué)到如何把 JSON 文本轉(zhuǎn)換為 JavaScript 對(duì)象。
JSON 文件
JSON 文件的文件類(lèi)型是 ".json"
JSON 文本的 MIME 類(lèi)型是 "application/json"