JavaScript JSON使用原理及注意事項
環(huán)境
- vscode 1.46
- Microsoft Edge 83
概念
JSON 是一種按照J(rèn)avaScript對象語法的數(shù)據(jù)格式,這是 Douglas Crockford 推廣的。
雖然它是基于 JavaScript 語法,但它獨立于 JavaScript,這也是為什么許多程序環(huán)境能夠讀?。ń庾x)和生成 JSON。
JSON可以作為一個對象或者字符串存在,前者用于解讀 JSON 中的數(shù)據(jù),后者用于通過網(wǎng)絡(luò)傳輸 JSON 數(shù)據(jù)。
JavaScript 提供一個全局的 可訪問的 JSON 對象來對這兩種數(shù)據(jù)進(jìn)行轉(zhuǎn)換。
JSON 結(jié)構(gòu)
{
"squadName" : "Super hero squad",
"homeTown" : "Metro City",
"formed" : 2016,
"secretBase" : "Super tower",
"active" : true,
"members" : [
{
"name" : "Molecule Man",
"age" : 29,
"secretIdentity" : "Dan Jukes",
"powers" : [
"Radiation resistance",
"Turning tiny",
"Radiation blast"
]
},
{
"name" : "Madame Uppercut",
"age" : 39,
"secretIdentity" : "Jane Wilson",
"powers" : [
"Million tonne punch",
"Damage resistance",
"Superhuman reflexes"
]
},
{
"name" : "Eternal Flame",
"age" : 1000000,
"secretIdentity" : "Unknown",
"powers" : [
"Immortality",
"Heat Immunity",
"Inferno",
"Teleportation",
"Interdimensional travel"
]
}
]
}
JSON 數(shù)組
[
{
"name" : "Molecule Man",
"age" : 29,
"secretIdentity" : "Dan Jukes",
"powers" : [
"Radiation resistance",
"Turning tiny",
"Radiation blast"
]
},
{
"name" : "Madame Uppercut",
"age" : 39,
"secretIdentity" : "Jane Wilson",
"powers" : [
"Million tonne punch",
"Damage resistance",
"Superhuman reflexes"
]
}
]
其他注意事項
- JSON 是一種純數(shù)據(jù)格式,它只包含屬性,沒有方法。
- JSON 要求有兩頭的 { } 來使其合法。最安全的寫法是有兩邊的括號,而不是一邊。
- 甚至一個錯位的逗號或分號就可以導(dǎo)致 JSON 文件出錯。您應(yīng)該小心的檢查您想使用的數(shù)據(jù)(雖然計算機(jī)生成的 JSON 很少出錯,只要生成程序正常工作)。您可以通過像 JSONLint 的應(yīng)用程序來檢驗 JSON。
- JSON 可以將任何標(biāo)準(zhǔn)合法的 JSON 數(shù)據(jù)格式化保存,不只是數(shù)組和對象。比如,一個單一的字符串或者數(shù)字可以是合法的 JSON 對象。雖然不是特別有用處……
- 不像 JavaScript 標(biāo)識符可以用作屬性,在 JSON 中,只有字符串才能用作屬性。
對象和文本間的轉(zhuǎn)換
可以使用 JSON.stringify 和 JSON.parse 來進(jìn)行對象和文本間的轉(zhuǎn)換。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
JavaScript在for循環(huán)中綁定事件解決事件參數(shù)不同的情況
響應(yīng)一堆相似的事件,但是每個事件的參數(shù)都不同,在這種情況下就可以使用JavaScript 在for循環(huán)中綁定事件,下面有個不錯的示例,大家可以參考下2014-01-01
你必須知道的Javascript知識點之"字面量和對應(yīng)類型"說明介紹
本篇文章小編為大家介紹,你必須知道的Javascript知識點之"字面量和對應(yīng)類型"。需要的朋友參考下2013-04-04
詳解JavaScript數(shù)組和字符串中去除重復(fù)值的方法
這篇文章主要介紹了詳解JavaScript數(shù)組和字符串中去除重復(fù)值的方法,及利用各種限制條件對數(shù)組和字符串進(jìn)行過濾,需要的朋友可以參考下2016-03-03
KnockoutJS 3.X API 第四章之?dāng)?shù)據(jù)控制流component綁定
這篇文章主要介紹了KnockoutJS 3.X API 第四章之?dāng)?shù)據(jù)控制流component綁定的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-10-10

