您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關json數據指的是什么,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
json數據是是一種輕量級的數據交換格式,它基于一個子集,采用完全獨立于編程語言的文本格式來存儲和表示數據。簡潔和清晰的層次結構使得 JSON 成為理想的數據交換語言。
JSON數據是:
JSON (JavaScript Object Notation, JS 對象標記) 是一種輕量級的數據交換格式。它基于 ECMAScript (w3c制定的js規范)的一個子集,采用完全獨立于編程語言的文本格式來存儲和表示數據。簡潔和清晰的層次結構使得 JSON 成為理想的數據交換語言。 易于人閱讀和編寫,同時也易于機器解析和生成,并有效地提升網絡傳輸效率。——百度百科
數據傳輸是我們在敲代碼時,經常遇到的一個場景,前后端交互。給數據一個統一的格式有利于我們編寫和解析數據。
json,是一種數據格式,在與后端的數據交互中有較為廣泛的應用。
JSON的誕生
JSON是 (JavaScript Object Notation, JS 對象標記),它是一種數據交換格式。在JSON出現之前,大家一直用XML來傳遞數據。因為XML是一種純文本格式,所以它適合在網絡上交換數據。XML本身不算復雜,但是,加上DTD、XSD、XPath、XSLT等一大堆復雜的規范以后,任何正常的軟件開發人員碰到XML都會感覺頭大了,最后大家發現,即使你努力鉆研幾個月,也未必搞得清楚XML的規范。
終于,在2002年的一天,道格拉斯·克羅克福特(DouglasCrockford)同學為了拯救深陷水深火熱同時又被某幾個巨型軟件企業長期愚弄的軟件工程師,發明了JSON這種超輕量級的數據交換格式。
由于JSON非常簡單,很快就風靡Web世界,并且成為ECMA標準。幾乎所有編程語言都有解析JSON的庫,而在JavaScript中,我們可以直接使用JSON,因為JavaScript內置了JSON的解析。把任何JavaScript對象變成JSON,就是把這個對象序列化成一個JSON格式的字符串,這樣才能夠通過網絡傳遞給其他計算機。如果我們收到一個JSON格式的字符串,只需要把它反序列化成一個JavaScript對象,就可以在JavaScript中直接使用這個對象了。
轉義
我們在調用 jsonp 接口或者調用js文件的時候,由于文件編碼不同會導致出現亂碼的問題。 如果你的文件出現了非英文字符,如果調用時文件編碼不一致,同樣會出現亂碼情況。
這也就是為什么要數據統一格式的原因。
JSON 是適用于 Ajax 應用程序的一種有效格式,原因是它使 JavaScript 對象和字符串值之間得以快速轉換 JSON是一種傳遞對象的語法
JSON是一個提供了stringify和parse方法的內置對象
stringify將js對象轉化為符合json標準的字符串
parse將符合json標準的字符串轉化為js對象
JSON對值的類型和格式有嚴格的規定
復合類型的值只能是數組或對象,不能是函數、正則表達式對象、日期對象。
簡單類型的值只有四種:字符串、數值(必須以十進制表示)、布爾值和null(不能使用NaN, Infinity, -Infinity和undefined)。
字符串必須使用雙引號表示,不能使用單引號。
對象的鍵名必須放在雙引號里面。
數組或對象最后一個成員的后面,不能加逗號。
PS: 需要注意的是,空數組和空對象都是合格的JSON值,null本身也是一個合格的JSON值。
JSON 的語法規則
JSON 的語法規則十分簡單,可稱得上“優雅完美”,總結起來有:
數組(Array)用方括號(“[]”)表示。
對象(Object)用大括號(”{}”)表示。
名稱/值對(name/value)組合成數組和對象。
名稱(name)置于雙引號中,值(value)有字符串、數值、布爾值、null、對象和數組。
并列的數據之間用逗號(“,”)分隔
實例
JSON 數據的書寫格式是:名稱/值對。
名稱/值對組合中的名稱寫在前面(在雙引號中),值對寫在后面,中間用冒號隔開,
其中 值 可以是:數字(整數或浮點數)、字符串(在雙引號中)、布爾值(true或false)、數組(在方括號中)、對象(在花括號中)、null
varjson= {"password":123456,"name":"myname","Booleans":true,"Array":[x,y,z],"object":{}}
或者是嵌套使用
轉義概述
為什么需要轉義?在js中我們使用的js對象進行處理,但是在與后端數據交換的時候,我們發送規定的json格式的字符串,所以在給后端發送或接受數據的時候,需要轉義
{name:"myname",password:123456} "{"name":"myname","password":123456}"
其中json字符串轉js對象,調用parse方法:
js對象 = JSON.parse(json字符串);
js對象轉json字符串,調用stringify方法:
json字符串 = JSON.stringify(js對象);
關于json數據指的是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。