乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Ajax:擁抱JSON,讓XML走開...

       nbtymm 2006-12-11

      Ajax(Asynchronous JavaScript and XML)說到底就是一種瀏覽器異步讀取服務(wù)器上XML內(nèi)容的技術(shù)?,F(xiàn)在的技術(shù)凡是跟XML扯上關(guān)系,再加上個(gè)概念做幌子,就像金裝了一樣,拽得不行。門外的人看得很是熱鬧,門里的人搖搖頭不外如是。XML呢,跨平臺(tái)的新潮語言?其實(shí)XML=TXT。XML只是符合很多規(guī)范的文本。它本身什么都不是,只是保存字符的文件。而瀏覽器異步讀取的只是服務(wù)器上的文本內(nèi)容,所以在Ajax開發(fā)時(shí)完全不必拘泥于XML。本文介紹了JSON的基本原理、JSON的構(gòu)造格式,在文末比較了XML與JSON的優(yōu)缺點(diǎn)

       版權(quán)所有,轉(zhuǎn)載請(qǐng)注明,來自www.

      Ajax(Asynchronous JavaScript and XML)說到底就是一種瀏覽器異步讀取服務(wù)器上XML內(nèi)容的技術(shù)。現(xiàn)在的技術(shù)凡是跟XML扯上關(guān)系,再加上個(gè)概念做幌子,就像金裝了一樣,拽得不行。門外 的人看得很是熱鬧,門里的人搖搖頭不外如是。XML呢,跨平臺(tái)的新潮語言?其實(shí)XML=TXT。XML只是符合很多規(guī)范的文本。它本身什么都不是,只是保 存字符的文件。而瀏覽器異步讀取的只是服務(wù)器上的文本內(nèi)容,所以在Ajax開發(fā)時(shí)完全不必拘泥于XML。[版權(quán)所有,www.]


      • JSON的來歷

      XML 的作用是格式化數(shù)據(jù)內(nèi)容。如果我們不用XML還有什么更好的方法嗎?這個(gè)答案是JSON。介紹JSON之前我先介紹一下JavaScript這門腳本語 言。腳本語言自身有動(dòng)態(tài)執(zhí)行的天賦。即我們可以把想要執(zhí)行的語句放在字符串里,通過eval()這個(gè)動(dòng)態(tài)執(zhí)行函數(shù)來執(zhí)行。字符串里的內(nèi)容會(huì)像我們寫的腳本 一樣被執(zhí)行。
      示例1:
      <HTML>
      <HEAD>
      <TITLE>eval example 1</TITLE>
      </HEAD>
      <BODY>
      <script>
      str 
      = "alert(‘hello‘)";
      eval(str);
      </script>
      </BODY>
      </HTML>

      打開頁面會(huì)彈出hello窗口。
      我們可以在字符串中放任何腳本語句,包括聲明語句:
      <HTML>
      <HEAD>
      <TITLE>eval example 2</TITLE>
      </HEAD>
      <BODY>
      <script>
      define 
      = "{name:‘Michael‘,email:‘17bity@gmail.com‘}";
      eval(
      "data = "+define);
      alert(
      "name:"+data.name);
      alert(
      "email:"+data.email);
      </script>
      </BODY>
      </HTML>

      如果我們?cè)诤笈_(tái)異步傳來的文本是JavaScript的聲明語句,那么不是一條eval方法就能解析了?對(duì)于解析復(fù)雜的XML,這樣的效率是多么大的提高?。?br>現(xiàn)在就來告訴你什么是JSON:JavaScript Object Notation。我更愿意把它翻譯為JavaScript對(duì)象聲明。比如要從后臺(tái)載入一些通訊錄的信息,如果寫成XML,如下:

      <contact>
          
      <friend>
              
      <name>Michael</name>
              
      <email>17bity@gmail.com</email>
              
      <homepage>http://www.</homepage>
          
      </friend>
          
      <friend>
              
      <name>John</name>
              
      <email>john@gmail.com</email>
              
      <homepage>http://www.</homepage>
          
      </friend>
          
      <friend>
              
      <name>Peggy</name>
              
      <email>peggy@gmail.com</email>
              
      <homepage>http://www.</homepage>
          
      </friend>
      </contact>


      而寫成JSON呢:
      [
        {
         name:
      "Michael",
         email:
      "17bity@gmail.com",
         homepage:
      "http://www."
       },
       {
         name:
      "John",
         email:
      "john@gmail.com",
         homepage:
      "http://www."
       },
        {
         name:
      "Peggy",
         email:
      "peggy@gmail.com",
         homepage:
      "http://www."
       }
      ]

      簡(jiǎn) 單的不只是表達(dá)上,最重要的是可以丟棄讓人暈頭轉(zhuǎn)向的DOM解析了。因?yàn)橹灰螶avaScript的聲明規(guī)范,JavaScrip會(huì)自動(dòng)幫你解析好 的。Ajax中使用JSON的基本方法是前臺(tái)載入后臺(tái)聲明JavaScript對(duì)象的字符串,用eval方法來將它轉(zhuǎn)為實(shí)際的對(duì)象,最后通過 DHTML更新頁面信息。

      • JSON的格式

      JSON的基本格式如下,圖片來自:
      對(duì)象是屬性、值對(duì)的集合。一個(gè)對(duì)象的開始于"{",結(jié)束于"}"。每一個(gè)屬性名和值間用":"提示,屬性間用","分隔。
      object.gif


      數(shù)組是有順序的值的集合。一個(gè)數(shù)組開始于"[",結(jié)束于"]",值之間用","分隔。
      array.gif


      值可以是引號(hào)里的字符串、數(shù)字、true、false、null,也可以是對(duì)象或數(shù)組。這些結(jié)構(gòu)都能嵌套。
      value.gif


      字符串的定義和C或Java基本一致。
      string.gif


      數(shù)字的定義也和C或Java基本一致。
      number.gif


      • JSON VS XML

      可讀性
      JSON和XML的可讀性可謂不相上下,一邊是建議的語法,一邊是規(guī)范的標(biāo)簽形式,很難分出勝負(fù)。

      可擴(kuò)展性

      XML天生有很好的擴(kuò)展性,JSON當(dāng)然也有,沒有什么是XML能擴(kuò)展,JSON不能的。

      編碼難度
      XML有豐富的編碼工具,比如Dom4j、JDom等,JSON也有提供的工具,但是JSON的編碼明顯比XML容易許多,即使不借助工具也能寫出JSON的代碼,可是要寫好XML就不太容易了。

      解碼難度
      XML的解析得考慮子節(jié)點(diǎn)父節(jié)點(diǎn),讓人頭昏眼花,而JSON的解析難度幾乎為0。這一點(diǎn)XML輸?shù)恼媸菦]話說。

      流行度

      XML已經(jīng)被業(yè)界廣泛的使用,而JSON才剛剛開始,但是在Ajax這個(gè)特定的領(lǐng)域,未來的發(fā)展一定是XML讓位于JSON。到時(shí)Ajax應(yīng)該變成Ajaj(Asynchronous JavaScript and JSON)了。

      [版權(quán)所有,www.]


      附:
      JSON.org : http://www./
      JSON in JavaScript : http://www./js.html
      JSON: The Fat-Free Alternative to XML : http://www./xml.html
      JSON and the Dynamic Script Tag: Easy, XML-less Web Services for JavaScript: http://www./pub/a/2005/12/21/json-dynamic-script-tag.html
      Using JSON (JavaScript Object Notation) with Yahoo! Web Services: http://developer.yahoo.com/common/json.html

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多