json是必須用大括號的,因為json的語法規定是必須用大括號包裹,並且數據為【KEY:vlaue】模式,在任何支持的類型都可以通過JSON來表示,如“字串、數字、物件」等,但是物件和陣列是比較特殊且常用的兩種類型,其中物件表示為鍵值對,資料由逗號分隔。
JSON 語法規則
#在 JS 語言中,一切都是物件。因此,任何支援的類型都可以透過 JSON 來表示,例如字串、數字、物件、陣列等。但是物件和陣列是比較特殊且常用的兩種類型:
物件表示為鍵值對
資料由逗號分隔
花括號保存物件
方括號保存陣列
JSON 鍵/值對
JSON 鍵值對是用來保存JS 物件的一種方式,和JS 物件的寫法也大同小異,鍵/值對組合中的鍵名寫在前面並用雙引號"" 包裹,使用冒號: 分隔,然後緊接著值:
{"firstName": "Json"}
這很容易理解,等價於這條JavaScript 語句。
{firstName : "Json"}
一、{ } 大括號,表示定義一個對象,大部分情況下要有成對的屬性和值,或是函數。
如:var LangShen = {"Name":"Langshen","AGE":"28"};
上面宣告了一個名為「LangShen」的對象,多個屬性或函數用,(逗號)隔開,因為是物件的屬性,
所以訪問時,應該用.(點)來層層存取:LangShen.Name、LangShen.AGE,當然我們也可以用數組的方式來訪問,如:LangShen["Name"]、LangShen["AGE"],結果是一樣的。
該寫法,在JSON資料結構中常用,除此之外,我們平時寫函數組的時候,也常用到,如:
var LangShen = { Name = function(){ return "LangShen"; }, Age = function(){ return "28"; } }
呼叫方式差不多,因為是函數組,所以要加上(),如:alert( LangShen.Name() );
二、[ ]中括號,表示數組,也可以理解為數組物件。
如:var LangShen = [ "Name","LangShen","AGE","28" ];
很明顯,每個值或函數,都是獨立的,多個值之間只用,(逗號)隔開,因為是數組對象,所以它等於:
var LangShen = Array( "Name","LangShen","AGE","28" );
訪問時,也是和數組一樣,alert( LangShen[0] );
三、{ } 和[ ] 一起使用,我們前面說到,{ } 是一個對象,[ ] 是一個數組,我們可以組成一個對象數組,如:
var LangShen = { "Name":"Langshen", "MyWife":[ "LuLu","26" ], "MySon":[{"Name":"Son1"},{"Name":"Son2"},{"Name":"Son3"}] }
從上面的結構來看,是一個物件裡面的第一項是個屬性,第二項是數組,第三個是包含多個物件的數組。呼叫起來,也是一層一層訪問,物件的屬性用.(點)疊加,數組用 [下標] 來訪問。
以上是json必須用大括號麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!