JSON 的英文全稱是 JavaScript Object Notation,即“JavaScript 對(duì)象表示法”。簡單來講,JSON 就是 Javascript 對(duì)象和數(shù)組的字符串表示法,它使用文本表示一個(gè) JS 對(duì)象或數(shù)組的信息,因此,JSON 的本質(zhì)是字符串。
作用:JSON 是一種輕量級(jí)的文本數(shù)據(jù)交換格式,在作用上類似于 XML,專門用于存儲(chǔ)和傳輸數(shù)據(jù),但是 JSON 比 XML 更小、更快、更易解析。
現(xiàn)狀:JSON 是在 2001 年開始被推廣和使用的數(shù)據(jù)格式,到現(xiàn)今為止,JSON 已經(jīng)成為了主流的數(shù)據(jù)交換格式。
JSON的兩種結(jié)構(gòu)
JSON 就是用字符串來表示 Javascript 的對(duì)象和數(shù)組。所以,JSON 中包含對(duì)象和數(shù)組兩種結(jié)構(gòu),通過這兩種結(jié)構(gòu)的相互嵌套,可以表示各種復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。
對(duì)象結(jié)構(gòu):
對(duì)象結(jié)構(gòu)在 JSON 中表示為 { } 括起來的內(nèi)容。數(shù)據(jù)結(jié)構(gòu)為 { key: value, key: value, … } 的鍵值對(duì)結(jié)構(gòu)。其中,key 必須是使用英文的雙引號(hào)包裹的字符串,value 的數(shù)據(jù)類型可以是數(shù)字、字符串、布爾值、null、數(shù)組、對(duì)象6種類型。
{
name: "zs",
'age': 20,
"gender": '男',
"address": undefined,
"hobby": ["吃飯", "睡覺", '打豆豆']
say: function() {}
}
{
"name": "zs",
"age": 20,
"gender": "男",
"address": null,
"hobby": ["吃飯", "睡覺", "打豆豆"]
}
數(shù)組結(jié)構(gòu):數(shù)組結(jié)構(gòu)在 JSON 中表示為 [ ] 括起來的內(nèi)容。數(shù)據(jù)結(jié)構(gòu)為 [ “java”, “javascript”, 30, true … ] 。數(shù)組中數(shù)據(jù)的類型可以是數(shù)字、字符串、布爾值、null、數(shù)組、對(duì)象6種類型。
[ "java", "python", "php" ]
[ 100, 200, 300.5 ]
[ true, false, null ]
[ { "name": "zs", "age": 20}, { "name": "ls", "age": 30} ]
[ [ "蘋果", "榴蓮", "椰子" ], [ 4, 50, 5 ] ]
JSON語法注意事項(xiàng):
屬性名必須使用雙引號(hào)包裹,字符串類型的值必須使用雙引號(hào)包裹。
JSON 中不允許使用單引號(hào)表示字符串,JSON 中不能寫注釋。
JSON 的最外層必須是對(duì)象或數(shù)組格式,不能使用 undefined 或函數(shù)作為 JSON 的值。
JSON 的作用:在計(jì)算機(jī)與網(wǎng)絡(luò)之間存儲(chǔ)和傳輸數(shù)據(jù)。
JSON 的本質(zhì):用字符串來表示 Javascript 對(duì)象數(shù)據(jù)或數(shù)組數(shù)據(jù)
要實(shí)現(xiàn)從 JSON 字符串轉(zhuǎn)換為 JS 對(duì)象,使用 JSON.parse() 方法:文章來源:http://www.zghlxwxcb.cn/news/detail-489163.html
var obj = JSON.parse('{"a": "Hello", "b": "World"}')
//結(jié)果是 {a: 'Hello', b: 'World'}
要實(shí)現(xiàn)從 JS 對(duì)象轉(zhuǎn)換為 JSON 字符串,使用 JSON.stringify() 方法:文章來源地址http://www.zghlxwxcb.cn/news/detail-489163.html
var json = JSON.stringify({a: 'Hello', b: 'World'})
//結(jié)果是 '{"a": "Hello", "b": "World"}'
到了這里,關(guān)于JSON是什么意思?JSON和JS對(duì)象的互相轉(zhuǎn)換的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!