Chinese To English     英文 轉(zhuǎn) 中文             
                   
          隨筆-27  評(píng)論-53  文章-0  trackbacks-0
          JSON以一種特定的字符串形式來表示 JavaScript 對(duì)象。如果將具有這樣一種形式的字符串賦給任意一個(gè) JavaScript 變量,那么該變量會(huì)變成一個(gè)對(duì)象引用,而這個(gè)對(duì)象就是字符串所構(gòu)建出來的,好像有點(diǎn)拗口,我們還是用實(shí)例來說明。

           這里假設(shè)我們需要?jiǎng)?chuàng)建一個(gè)User對(duì)象,并具有以下屬性

        1. 用戶ID
        2. 用戶名
        3. 用戶Email

          您可以使用以下JSON形式來表示User對(duì)象:

          {"UserID":11, "Name":"Truly", "Email":"zhuleipro◎hotmail.com"};

          然后如果把這一字符串賦予一個(gè)JavaScript變量,那么就可以直接使用對(duì)象的任一屬性了。

          完整代碼:

          <script>
          var User = {"UserID":11, "Name":"Truly", "Email":"zhuleipro◎hotmail.com"}; alert(User.Name); </script>

          實(shí)際使用時(shí)可能更復(fù)雜一點(diǎn),比如我們?yōu)镹ame定義更詳細(xì)的結(jié)構(gòu),使它具有FirstName和LastName:

          {"UserID":11, "Name":{"FirstName":"Truly","LastName":"Zhu"}, "Email":"zhuleipro◎hotmail.com"}

          完整代碼:

          <script>
          var User = {"UserID":11, "Name":{"FirstName":"Truly","LastName":"Zhu"}, "Email":"zhuleipro◎hotmail.com"}; alert(User.Name.FirstName); </script>

          現(xiàn)在我們?cè)黾右粋€(gè)新的需求,我們某個(gè)頁面需要一個(gè)用戶列表,而不僅僅是一個(gè)單一的用戶信息,那么這里就需要?jiǎng)?chuàng)建一個(gè)用戶列表數(shù)組。
          下面代碼演示了使用JSON形式定義這個(gè)用戶列表:

          [
          {"UserID":11, "Name":{"FirstName":"Truly","LastName":"Zhu"}, "Email":"zhuleipro◎hotmail.com"},
          {"UserID":12, "Name":{"FirstName":"Jeffrey","LastName":"Richter"}, "Email":"xxx◎xxx.com"},
          {"UserID":13, "Name":{"FirstName":"Scott","LastName":"Gu"}, "Email":"xxx2◎xxx2.com"}
          ]


          完整代碼:

          <script>
          var UserList = [
          {"UserID":11, "Name":{"FirstName":"Truly","LastName":"Zhu"}, "Email":"zhuleipro◎hotmail.com"},
          {"UserID":12, "Name":{"FirstName":"Jeffrey","LastName":"Richter"}, "Email":"xxx◎xxx.com"},
          {"UserID":13, "Name":{"FirstName":"Scott","LastName":"Gu"}, "Email":"xxx2◎xxx2.com"}
          ];
          alert(UserList[0].Name.FirstName);
          </script>

          事實(shí)上除了使用"."引用屬性外,我們還可以使用下面語句:

          alert(UserList[0]["Name"]["FirstName"]); 或者 alert(UserList[0].Name["FirstName"]); 

          現(xiàn)在讀者應(yīng)該對(duì)JSON的使用有點(diǎn)認(rèn)識(shí)了,歸納為以下幾點(diǎn):

        4. 對(duì)象是屬性、值對(duì)的集合。一個(gè)對(duì)象的開始于“{”,結(jié)束于“}”。每一個(gè)屬性名和值間用“:”提示,屬性間用“,”分隔。
        5. 數(shù)組是有順序的值的集合。一個(gè)數(shù)組開始于"[",結(jié)束于"]",值之間用","分隔。
        6. 值可以是引號(hào)里的字符串、數(shù)字、true、false、null,也可以是對(duì)象或數(shù)組。這些結(jié)構(gòu)都能嵌套。
        7. 字符串和數(shù)字的定義和C或Java基本一致。

        8. 此文轉(zhuǎn)載自:http://www.cnblogs.com/Truly/archive/2006/12/31/608896.html
          更多參考資料:http://www.ibm.com/developerworks/cn/web/wa-lo-json/



          杰森 
          郵箱:json.shen(at)gmail.com
          網(wǎng)站:www.shenjia.org
          posted on 2008-10-05 16:29 杰森 閱讀(1086) 評(píng)論(2)  編輯  收藏 所屬分類: JavaEE

          評(píng)論:
          # re: JSON-RPC-Java 學(xué)習(xí)筆記(二) - JSON使用 2008-12-03 15:53 | JAVA_START
          這東西不錯(cuò)哦!  回復(fù)  更多評(píng)論
            
          # re: JSON-RPC-Java 學(xué)習(xí)筆記(二) - JSON使用 2008-12-03 16:37 | JAVA_START
          嗨117
          主站蜘蛛池模板: 彰武县| 吴江市| 扬中市| 肇州县| 调兵山市| 尼勒克县| 农安县| 辽源市| 五指山市| 盐亭县| 长葛市| 辽宁省| 股票| 金塔县| 辉县市| 东乡| 横峰县| 满城县| 济南市| 灵武市| 平度市| 景洪市| 台中县| 扶沟县| 高要市| 三江| 抚州市| 红原县| 石林| 马公市| 怀仁县| 安徽省| 大余县| 华容县| 惠安县| 金华市| 静宁县| 德钦县| 明光市| 大宁县| 曲麻莱县|