當前位置:成語大全網 - 書法字典 - 什麽是JSON字符串?

什麽是JSON字符串?

簡單地說【2】,JSON可以將JavaScript對象中表示的壹組數據轉換為壹個字符串,然後它可以輕松地在函數之間傳遞這個字符串,或者在異步應用程序中將字符串從Web客戶端傳遞到服務器端程序。這個字符串看起來有點奇怪,但JavaScript可以輕松地解釋它,JSON可以表示比“名稱/值對”更復雜的結構。例如,您可以表示數組和復雜對象,而不僅僅是簡單的鍵和值列表。

名稱/值對

在最簡單的形式中,“名稱/值對”可以由JSON表示如下:

{“名字“:“布雷特“}

這個示例非常簡單,實際上比等效的純文本“名稱/值對”占用更多空間:

名字=布雷特

然而,當多個“名稱/值對”串在壹起時,JSON將顯示其價值。首先,您可以創建包含多個“名稱/值對”的記錄,例如:

{“名字“:“布雷特“,“姓氏“:“麥克勞林“,“電子郵件“:“AAAA“}

從語法上講,這並不比“名稱/值對”好多少,但在這種情況下,JSON更容易使用,可讀性更好。例如,它清楚地表明以上三個值都是同壹記錄的壹部分;大括號以某種方式將這些值聯系起來。

表示數組

當需要表示壹組值時,JSON不僅可以提高可讀性,還可以降低復雜性。例如,假設您想要表示壹個姓名列表。在XML中,需要許多開始標記和結束標記;如果使用典型的名稱/值對(如本系列前面的文章中所見),則必須建立壹種專有的數據格式,或者將鍵名稱更改為person1-firstName的形式。

如果使用JSON,只需要用花括號將多個記錄分組:

{

“人”:【

{“名字“:“布雷特“,“姓氏“:“麥克勞林“,“電子郵件“:“AAAA“},

{“名字“:“Jason“,“姓氏“:“Hunter“,“email“:“bbbb“},

{“名字“:“Elliotte“,“姓氏“:“Harold“,“電子郵件“:“cccc“}

]

}

不難理解。在本例中,只有壹個名為people的變量,其值是壹個包含三個條目的數組,每個條目都是壹個人的記錄,包括名字、姓氏和電子郵件地址。上面的示例演示了如何用括號將記錄組合成壹個值。當然,您可以使用相同的語法來表示多個值(每個值包含多條記錄):

{

“程序員”:【{

“名字”:“布雷特”,

“姓氏”:“麥克勞克林”,

“電子郵件”:“aaaa”

}, {

“名字”:“傑森”,

“姓氏”:“獵人”,

“電子郵件”:“bbbb”

}, {

“名字”:“Elliotte”,

“姓氏”:“哈羅德”,

“電子郵件”:“cccc”

}],

“作者“:【{

“名字”:“艾薩克”,

“姓氏”:“阿西莫夫”,

“類型”:“科學小說”

}, {

“名字”:“Tad”,

“姓氏”:“威廉姆斯”,

“類型”:“幻想”

}, {

“名字”:“弗蘭克”,

“姓氏”:“佩雷蒂”,

“類型”:“基督教”

}],

“音樂家”:【{

“名字”:“埃裏克”,

“姓氏”:“克拉普頓”,

“樂器”:“吉他”

}, {

“名字”:“謝爾蓋”,

“姓氏”:“拉赫瑪尼諾夫”,

“樂器”:“鋼琴”

}]

}

這裏最值得註意的是它可以表示多個值,而每個值又包含多個值。但是,還應該註意,記錄中的實際名稱/值對在不同的主要項目(程序員、作者和音樂家)之間可能不同。JSON是完全動態的,允許您在JSON結構的中間更改表示數據的方式。

當處理JSON格式的數據時,沒有預定義的約束可循。因此,在同壹數據結構中,表示數據的方式可以改變,甚至同壹事物可以用不同的方式表示。