盡管有許多宣傳
現(xiàn)在, JSON 為 Web 應用開發(fā)者提供了另一種數(shù)據(jù)交換格式。讓我們來看看 JSON 到底是什么,同 XML 或 HTML 片段相比,JSON 提供了更好的簡單性和靈活性。 JSON 數(shù)據(jù)格式解析 和 XML 一樣,JSON 也是基于純文本的數(shù)據(jù)格式。由于 JSON 天生是為 JavaScript 準備的,因此,JSON 的數(shù)據(jù)格式非常簡單,您可以用 JSON 傳輸一個簡單的 String,Number,Boolean,也可以傳輸一個數(shù)組,或者一個復雜的 Object 對象。 String,Number 和 Boolean 用 JSON 表示非常簡單。例如,用 JSON 表示一個簡單的 String “ abc ”,其格式為:
除了字符 ",,/ 和一些控制符(b,f,n,r,t)需要編碼外,其他 Unicode 字符可以直接輸出。下圖是一個 String 的完整表示結構: 圖 1. String 的完整表示結構 一個 Number 可以根據(jù)整型或浮點數(shù)表示如下: 圖 2. Number 的表示結構
這與絕大多數(shù)編程語言的表示方法一致,例如:
Boolean 類型表示為 true 或 false 。此外,JavaScript 中的 null 被表示為 null,注意,true、false 和 null 都沒有雙引號,否則將被視為一個 String 。 JSON 還可以表示一個數(shù)組對象,使用 [] 包含所有元素,每個元素用逗號分隔,元素可以是任意的 Value,例如,以下數(shù)組包含了一個 String,Number,Boolean 和一個 null:
Object 對象在 JSON 中是用 {} 包含一系列無序的 Key-Value 鍵值對表示的,實際上此處的 Object 相當于 Java 中的 Map<String, Object>,而不是 Java 的 Class 。注意 Key 只能用 String 表示。 例如,一個 Address 對象包含如下 Key-Value:
用 JSON 表示如下:
其中 Value 也可以是另一個 Object 或者數(shù)組,因此,復雜的 Object 可以嵌套表示,例如,一個 Person 對象包含 name 和 address 對象,可以表示如下:
|
|
來自: WindySky > 《JSON 入門指南》