天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

XML的代替者----JSON

我個人覺得phpJavascript各有長處,如果能完美的結合起來,那將創(chuàng)造出許許多多的奇跡! 我是初次寫此類文章,Bug難免,請各位指正~ 
    現在AJAX應用非常流行,而在AJAX中客戶端Javascript和服務端動態(tài)腳本的通信是關鍵。如果傳輸的信息比較簡單,通常我們會直接采用字符串的方式,如果信息結構復雜一點,則通常用XML文檔。XML文檔雖然應用廣泛,但是用php生成和用Javascript處理卻不是一件很容易的事情。這里我推薦一種XML文檔的比較好簡化替代方案:JSON! 
    首先我們來了解一下Javascript的基礎知識。 
    1.創(chuàng)建數組,可以用JS內建的類Array來初始化,也可以用JSON符號"[]"。下面通過兩種方式創(chuàng)建的arr1和arr2的實質是一樣的: 

var arr1 = new Array(); 
arr1[0] = "apple"; 
arr1[1] = "google"; 
arr1[2] = "longbill"; 

var arr2 = ["apple","google","longbill"];
注意,數組的索引也可以是字符串,如 arr1["name"] = "longbill"; 這時的數組就相當于對象了。。。 
    2.創(chuàng)建對象,可以用JS內建的類Object來初始化,也可以用JSON符號"{}"。下面通過兩種方式創(chuàng)建的obj1和ob2的實質也是一樣的: 


var obj1 = new Object(); 
obj1.name = "longbill"; 
obj1.age = 18; 

var obj2 = { name:"longbill",age:18 };
注意,這里"{"和"}"之間必須寫成"鍵:值"的形式,而且不同的"鍵:值"之間要用","分割。 "鍵"中也可以包含空格等特殊字符,此時要用""(引號)來引用,如 "phone number":123456 
    其實在JS中,數組的本質是一個對象,對象本身也是一個數組。所以, obj1.name 和 obj1["name"] 是同一個引用。 
    我們還可以通過JSON符號的嵌套來定義復雜的S對象: 


var people = [ 
    { 
        name:"longbill", 
        age:18 
    }, 
    { 
        name:"neal", 
        age:19 
    }, 
    { 
        name:"glocklee", 
        age:17 
    } 
];
//這個應該看的懂吧~~ 
大部分XML文檔都可以用JSON來表達: 


<?xml version="1.0"?> 
<root> 
  <book> 
    <name>Ju love</name> 
    <price>$15</price> 
  </book> 
  <book> 
    <name>Javascrip</name> 
    <price>$25</price> 
  </book> 
</root>

如果用JSON就可以表達為: 


root: 

  { 
     name:"Ju love", 
     price:"$15" 
  }, 
  { 
     name:"Javascript", 
     price:"$25" 
  } 
]}

是不是簡化很多? 

    而且客戶端JS處理起來也很簡單,只要用執(zhí)行字符串函數 "eval" 就可以將JSON信息提取出來,而如果是XML文檔,那就不的不用大量的標準DOM操作來提取其中的數據。如: 


//已經用AJAX從服務端下載了一個JSON文件(字符串),保存在變量 json 里 
eval("var myvar = "+json); 
//這樣,JSON里的信息就表達在myvar這個變量里了。
缺點:一旦JSON的格式錯誤,將導致服務端JS系統(tǒng)錯誤,甚至崩潰。 
   解決辦法: 
   最好在eval之前使用try(試探執(zhí)行),如 


//已經用AJAX從服務端下載了一個JSON文件(字符串),保存在變量 json 里 
try { 
    eval("var myvar = "+json); 
} catch(e) { alert('json syntax error!'); } 
//這樣,即使JSON格式錯誤,也只會彈出一個提示框,而不會拋出一個腳本錯誤!

JavaScript技術XML的代替者----JSON,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 极品虎白在线观看 | 国内精品不卡一区二区三区 | YELLOW视频在线观看最新 | 久久AV亚洲精品一区无码网 | 欧美成人一区二免费视频 | 国产在线观看成人 | 国产精品高清在线观看93 | 婚后被调教当众高潮H喷水 回复术士勇者免费观看全集 | 最近中文字幕MV免费高清在线 | 精品亚洲视频在线观看 | 久久re视频这里精品免费1 | 影音先锋av丝袜天堂 | 人妻夜夜爽天天爽三区麻豆AV网站 | 成人久久欧美日韩一区二区三区 | 欧美亚洲另类丝袜自拍动漫 | 奇米网一区二区三区在线观看 | 视频成人永久免费视频 | 乱码中字在线观看一二区 | 在线播放真实国产乱子伦 | 国产欧美一区二区三区免费 | 一区二区三区无码被窝影院 | 天天爽夜夜爽8888视频精品 | 脱jk裙的美女露小内内无遮挡 | 国产精品亚洲精品久久品 | 亚洲人人为我我为人人 | 红桃传媒少妇人妻网站无码抽插 | 国产精品热久久高潮AV袁孑怡 | 在线国产三级 | 暖暖在线观看播放视频 | 神马老子影院午夜伦 | 国产激情视频在线观看 | 久久这里只有精品视频9 | 尤物99久久久合集一区区 | 最新果冻传媒在线观看免费版 | 宅男午夜大片又黄又爽大片 | 国产婷婷色一区二区三区在线 | 亚洲精品一区国产欧美 | 久久成人免费观看全部免费 | 国产传媒精品1区2区3区 | 一一本之道高清视频在线观看中文字幕 | 国产精品免费大片 |