1. 程式人生 > >JSON 的深入理解

JSON 的深入理解

jos 數據轉換 不同 宋體 ges 分隔 blog 結構 集合

JSON 知識

JSON(JavaScript Object Notataion)javascript的對象表示形式,但是目前已經發展為一種輕量級的數據交互格式。

特點:完全獨立於語言的文本格式,跨平臺,有結構的,方便人和機器來解析。

使用場景

1.不同語言之間的數據傳遞(JSON就是String,但是它是有格式的),

前臺Javascript 後臺 java 註意不是一種語言,後臺查詢完數據庫後,要把數據傳遞給前臺,會將數據轉化為List、Set、Map傳遞給前端。但是js 不識別。所以將後臺的數據轉換為JSON 然後前臺才可以解析。後臺List---->JSON 然後前臺才可以解析。

2.SSH----->EasyUI|EXTJS|AJAX|

JSON 與XML ,properties 的區別:

1)JOSN 屬於輕量級的,而XML 是重量級(標簽描述過多)的(web.xml),目前XML一般用於框架的配置。

2)Josn 是有結構的,但是Properties 僅僅是key value(json 裏面可以傳對象。

3.自己的理解

既然都用json 交換數據了,為什麽還要到前端轉換為對象,就是為了點屬性好用麽?

Json 不轉換為對象沒有辦法拿到你想要的,那麽一大串。

可不可以直接傳輸對象呢?

如果傳遞對象需要序列化,接收對象需要反序列化,比較麻煩。

跨平臺的理解?

Java 對象如何給JS 就需要做成大家都認識的格式。

Java 對象只有Java 認識,js 對象只有JS 認識,但是Json 是

JAVA 和js 都認認識的,只有都認識的二種語言之間才可以交互。

4.JSON具有以下這些形式:

對象(object 是一個無序的“‘名稱/集合。一個對象以“{”(左括號)開始,“}”(右括號)結束。每個名稱後跟一個“:”(冒號);“‘名稱/之間使用“,”(逗號)分隔。

技術分享

數組(array 是值(value)的有序集合。一個數組以“[”(左中括號)開始,“]”(右中括號)結束。值之間使用“,”(逗號)分隔。

技術分享

值(value 可以是雙引號括起來的字符串(

string)、數值(number)truefalse null、對象(object)或者數組(array)。這些結構可以嵌套。

技術分享

JSON 的深入理解