JavaScript JSON使用原理及注意事項
環(huán)境
vscode 1.46 Microsoft Edge 83概念
JSON 是一種按照JavaScript對象語法的數(shù)據(jù)格式,這是 Douglas Crockford 推廣的。
雖然它是基于 JavaScript 語法,但它獨立于 JavaScript,這也是為什么許多程序環(huán)境能夠讀取(解讀)和生成 JSON。
JSON可以作為一個對象或者字符串存在,前者用于解讀 JSON 中的數(shù)據(jù),后者用于通過網(wǎng)絡(luò)傳輸 JSON 數(shù)據(jù)。
JavaScript 提供一個全局的 可訪問的 JSON 對象來對這兩種數(shù)據(jù)進行轉(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ù)(雖然計算機生成的 JSON 很少出錯,只要生成程序正常工作)。您可以通過像 JSONLint 的應(yīng)用程序來檢驗 JSON。 JSON 可以將任何標準合法的 JSON 數(shù)據(jù)格式化保存,不只是數(shù)組和對象。比如,一個單一的字符串或者數(shù)字可以是合法的 JSON 對象。雖然不是特別有用處…… 不像 JavaScript 標識符可以用作屬性,在 JSON 中,只有字符串才能用作屬性。對象和文本間的轉(zhuǎn)換
可以使用 JSON.stringify 和 JSON.parse 來進行對象和文本間的轉(zhuǎn)換。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 解決docker與vmware的沖突問題2. Django中的AutoField字段使用3. Python基于jieba, wordcloud庫生成中文詞云4. IntelliJ Idea 2020.1 正式發(fā)布,官方支持中文(必看)5. IntelliJ IDEA設(shè)置自動提示功能快捷鍵的方法6. asp.net core應(yīng)用docke部署到centos7的全過程7. Java 3D的動畫展示(Part1-使用JMF)8. Django ORM實現(xiàn)按天獲取數(shù)據(jù)去重求和例子9. 刪除docker里建立容器的操作方法10. java使用FFmpeg合成視頻和音頻并獲取視頻中的音頻等操作(實例代碼詳解)
