你不可不知的JSON

JSON介紹javascript

          XML——這種用於表示客戶端與服務器間數據交換有效負載的格式,幾乎已經成了Web services的同義詞。咱們知道AJAX技術可以使得每一次請求更加迅捷,對於每一次請求返回的不是整個頁面,也僅僅是所須要返回的數據。然而,因爲Ajax和REST技術的出現影響了應用程序架構,這迫令人們開始尋求`XML的替代品,如:JavaScript Object Notation(JSON)。html

          JSON 做爲一種更輕、更友好的 Web services客戶端的格式(多采用瀏覽器的形式或訪問 REST風格 Web服務的Ajax應用程序的形式)引發了 Web 服務供應商的注意。一般AJAX經過返回XML格式的數據,而後再經過客戶端複雜的JavaScript腳本解析和渲染這些XML格式的數據。JSON(讀Jason)是爲了可以使得數據格式成爲一種標準,更簡單的被JavaScript解析。java

          本文將闡述JSON在Web services設計中備受推崇的緣由,以及它做爲XML替代方案的主要優點和侷限性。文中還會深刻探討:隨着相應的Web 服務客戶端選擇使用JSON,如何才能便捷地在Java Web services中生成JSON輸出。json

      JSON的優勢數組

  • 輕量級的數據交換格式
  • 人們讀寫更加容易
  • 易於機器的解析和生成
  • 可以經過JavaScript中eval()函數解析JSON
  • JSON支持多語言。包括:ActionScript, C, C#, ColdFusion, E, Java, JavaScript, ML, Objective CAML, Perl, PHP, Python, Rebol, Ruby, and Lua.
       JSON語法是一種用於傳輸和生成數據的協定,很相似於C家族的語言,因此很容易被C家族的語言所解析。
       對象:對象包含再{}之間
       屬性:採用Key-Value對來表示。屬性之間使用逗號分開。  string : value
       數組:數組存放再[]之間   [ elements ]
       元素:元素之間用逗號分開
       值:值能夠是字符串,數字,對象,數組,true,false,null

       json的官方文檔:http://www.json.org/json-zh.html瀏覽器

      json在線校驗:http://www.bejson.com/
服務器

JSON格式架構

1.   對於相似{「a":"a1","b":"b1"}這樣的鍵值對,外邊必定要使用{}大括號,不能使用[]中括號,多個之間使用,逗號分隔。框架

2.   對於["1","2"]這類型的數組樣式,外邊必定使用[]中括號,不能使用{}大括號,多個之間使用,逗號分隔。函數

只要將上面兩條規則記住,再複雜的JSON數據都能看懂,再複雜的JSON格式也能拼接了。

JSON例子

{
    "menu": 
    {
        "id": "file",
        "value": "File:",
        "popup": 
        {
            "menuitem": 
             [
                {
                    "value": "New",
                    "onclick": "CreateNewDoc()"
                },
                {
                    "value": "Open",
                    "onclick": "OpenDoc()"
                },
                {
                    "value": "Close",
                    "onclick": "CloseDoc()"
                }
            ]
        }
    }
}

C#中使用JSON

參考 JSON.NET框架實現C#對象和JSON字符串的轉換:http://blog.csdn.net/ful1021/article/details/38657049

相關文章
相關標籤/搜索