JSON簡介
寫在前面
不知從什么時候起隅要,JSON一詞出現(xiàn)在我的夢里蝴罪,我的心里,我的工作里(額步清,跑調了洲炊?)。當然了尼啡,學習與工作的動力,也就不得不對它進行研究研究了⊙ⅲ現(xiàn)在依賴JSON作為數(shù)據(jù)傳輸格式很火(怪不得這個夏天有點熱)崖瞭,不僅因為它語法與語義簡單易于理解,而且顏值高(這么帥撑毛,瞬間膜拜)书聚、用著爽。JSON不難藻雌,越學越簡單雌续。下面我們來瞧瞧它的廬山真面目吧。
JSON詳解
從官方的文檔中得知胯杭,JSON(JavaScript Object Notation驯杜,JavaScript 對象表示法)是一種基于JavaScript語法的輕量級數(shù)據(jù)交換格式,它獨立于語言與平臺做个,具有自我描述性鸽心,易于理解滚局,便于解析與生成,優(yōu)秀的特性使得JSON被越來越多的使用顽频。
(1)JSON語法
學習JSON藤肢,我們先認識這些符號:{ }(大括號,用來表示對象)糯景、“ ” (雙引號嘁圈,用來存放鍵的名稱或值)、:(冒號蟀淮,相當于=或賦值)最住、[ ](中括號,用來表示數(shù)組)灭贷、温学,(逗號,用來分隔內容)甚疟。
JSON有兩種表現(xiàn)形式仗岖,一種是“鍵值對”形式,一種是值的有序列表览妖。
①“鍵值對”形式的JSON我們通常稱之為對象即JSONObject轧拄,可能在不同的語言中,“鍵值對”也可以表示記錄(Record)讽膏、結構(Struct)檩电、字典(Dictionary)、哈希表(Hashtable)等府树。那么我們現(xiàn)在只針對對象來展開JSON的討論俐末。
JSON對象是以“{”開始,“}”結束奄侠,中間部分由以 “卓箫,” 分隔的“Key(鍵):Value(值)”形式的內容組成(注意鍵值中間的冒號),其語法結構代碼如圖:
②值的有序列表形式的JSON我們通常稱為數(shù)組即JSONArray(本質上還是JSON對象)垄潮,在大部分語言中烹卒,我們都稱之為數(shù)組、列表弯洗、序列旅急。為便于表達,此處我們統(tǒng)一稱為數(shù)組牡整。
JSON數(shù)組以“[”開始藐吮,“]”結束,中間部分由以 “,” 分隔的相同類型的值(通常為JSON對象)組成炎码,其語法代碼結構如圖:
(2)JSON中“鍵值對”規(guī)則
在(1)中盟迟,我們遇到了“鍵值對”,其實簡單點來說就是名稱與值潦闲,例如個人信息中攒菠,姓名:張三,年齡:23歉闰,通常來講辖众,姓名、年齡就是我們所說的“鍵”和敬,而張三凹炸、23則是姓名與年齡對應的“值”。在JSON中昼弟,使用“鍵值對”需要遵守一定的規(guī)則啤它,在Android或Java開發(fā)中,對于所有的“鍵“的名稱必須使用String(字符串)類型(即名稱加雙引號)(在js中不需要舱痘,會自動判斷值類型)变骡,而”值“的類型可分為多種,如常用的基本數(shù)據(jù)類型(byte芭逝、short塌碌、char、int旬盯、long台妆、float、double胖翰、boolean)丹莲、空值椎扬、字符串洪唐、對象欧宜、數(shù)組森缠,”值“類型如圖:
(3)JSON對象與JSON字符串
”臥槽美莫,你們后臺的JSON數(shù)據(jù)格式改了桐愉,我這邊接收到的JSON字符串怪不得跟原來的不一樣“(看樣對后臺接口先進行調試還是有必要的)垢夹,”臥槽而克,忘了跟你說了靶壮,需求變了,JSON對象變了“员萍,這是我們經(jīng)常遇到的前后臺開發(fā)人員之間的的對話腾降。那什么是JSON對象?什么是JSON字符串呢碎绎?
JSON對象就是符合JSON格式要求的對象或數(shù)組螃壤,如 {"name":"張三"抗果,"age":23}。JSON字符串則是符合JSON格式要求的對象或數(shù)組的字符串表示奸晴,如 “{"name":"張三"冤馏,"age":23}”。
小結
本篇內容我們對JSON進行了簡單的介紹寄啼,知道了JSON基本概念逮光、表現(xiàn)方式、語法格式墩划、值類型等涕刚,對于在程序中的應用,將在以后的文章中慢慢呈現(xiàn)乙帮。
花開堪折直須折杜漠,人正年輕須奮斗。(哈哈察净,強行壓個韻)現(xiàn)在睡覺的話會做夢驾茴,現(xiàn)在學習的話會讓夢實現(xiàn)。(我的雞湯塞绿,分你一碗)
鄭重聲明:以上圖片來源于網(wǎng)絡(已標注)沟涨,若有侵權,先借我裝個X异吻。(請聯(lián)系我哈)