初識json------Day60

來源:互聯網
上載者:User

初識json------Day60

感覺json在當前的應用還蠻多的,前幾天簡單用了幾次,今天竟然有朋友問我,當我給他回答出來的時候有些好笑也有些滿足吧,怕明天再被問到相關的問題啊,就抓緊補下,免得同樣不會再出糗,朋友心目中的高大形象啊....


1、json是什嗎?

全稱為:JavaScript Object Notation

功能為:輕量級的資料交換格式

本質為:基於javascript的一個子集

特點為:完全獨立於語言的文本格式,卻有類似於C語言家族的習慣

2、json的出現背景

21世紀初,Douglas Crockford找尋一種簡便的資料交換格式,能夠在伺服器之間交換資料。

當時的通用資料交換語言是XML

json的出現解決的問題時使交換資料格式大大簡化,通常在提及的時候就是其簡單性和靈活性(具體簡化在哪,對XML還不是很熟悉呢,回頭再記錄比較吧)

3、json的文法格式

在這個的記錄中,與java語言聯合起來記憶的效果更好一些

第一:同樣可以將資料分為三種類型:標量、序列和映射;所謂標量,就是單個的資料;而序列,則是許多個資料;至於映射,就是有對應項的資料,在json的資料記錄中可以聯絡map集合;

第二:json中“,”可以聯絡java中句尾的“;”進行記憶;

第三:來看下Douglas Crockford聲稱已經都規定了,永遠不需再升級的規格

a、並列的資料之間用“,”進行分割;

b、映射用“:”來表示;

c、並列資料的集合(數組)用方括弧“[ ]”來表示;

d、映射的集合(對象)用大括弧“{}”來表示;

圖形描述:

(對c中並列資料的集合數組來用“【】”表示,裡面資料與資料之間用“,”進行分割)


(映射的集合對象用“{}”來表示,可以將對象放入大括弧中,表示不同的對象,映射用“:”來表示,雷同於java中的一條屬性,而不同屬性之間,也就是不同資料之間用“,”隔開)


(json的值類型)


這裡寫一個例子來看看:

{"musicians":[{"firstName":"Eric","lastName":"Clapton","instrument":"guitar"},{"firstName":"Sergei","lastName":"Rachmaninoff","instrument":"piano"}]}
在這裡musicians表示一個對象,好比java中的
public class Musicians(String firstName,String lastName,String instrument){private String firstName;private String lastName;private String instrument;};
而冒號之後的方括弧,則可以表示傳遞不同參數產生不同的執行個體對象,這樣大概的json知道是什麼了,文法確實不難啊。
今天看了部《史蒂夫-喬布斯:靈光乍現》,哎,不得不說那種使命感讓人汗顏不已啊...


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.