functiontest(){vars=document.createElement("SCRIPT" />

JSON学习(二)

系统 1428 0

在看了blogjava看了 emu 的一篇< 异步json例子 >, 感觉不错, 学习并记录下来

原稿地址 http://www.blogjava.net/emu/archive/2007/05/14/117416.html

异步json例子 的数据为

  1. < HTML >   
  2. < HEAD >   
  3. < title > 异步json例子 </ title >   
  4. < SCRIPT   LANGUAGE = "JavaScript" >   
  5. function test(){   
  6.     var  s  =  document .createElement("SCRIPT");   
  7.     document.getElementsByTagName("HEAD")[0].appendChild(s);   
  8.      s.src = "http://g2.qzone.qq.com/fcg-bin/cgi_emotion_list.fcg?uin=123456" ;   
  9. }   
  10. function visitCountCallBack(data){   
  11.     for(var i in data){   
  12.         var  e  = document .getElementById(i);   
  13.         if(e)  e.innerHTML = data [i];   
  14.     }   
  15.   
  16. }   
  17. </ SCRIPT >   
  18. </ HEAD >   
  19. < BODY >   
  20. < button   onclick = "test()" > test </ button > < BR >   
  21. 历史访问人数: < span   id = "visitcount"   style = "color:#6600CC" > 点击test按钮获取数据 </ span > < BR >   
  22. 今天访问人数: < span   id = "dayvisit"   style = "color:#CC6633" > 点击test按钮获取数据 </ span > < BR >   
  23. 阳光指数: < span   id = "sun"   style = "color:red" > 点击test按钮获取数据 </ span > < BR >   
  24. 爱心指数: < span   id = "love"   style = "color:violet" > 点击test按钮获取数据 </ span > < BR >   
  25. 雨露指数: < span   id = "rain"   style = "color:blue" > 点击test按钮获取数据 </ span > < BR >   
  26. 营养指数: < span   id = "nutri"   style = "color:green" > 点击test按钮获取数据 </ span > < BR >   
  27. 花匠级别: < span   id = "gardener"   style = "color:#996633" > 点击test按钮获取数据 </ span >   
  28. </ BODY >   
  29. </ HTML >   

其中请求的 http://g2.qzone.qq.com/fcg-bin/cgi_emotion_list.fcg?uin=123456 返回

  1. visitCountCallBack   
  2. (   
  3.   {   
  4.      "visitcount" :49036012,   
  5.      "dayvisit" :3144,   
  6.      "spacemark" :0,   
  7.      "markchange" :0,   
  8.      "sun" :416,   
  9.      "love" :402,   
  10.      "rain" :416,   
  11.      "nutri" :404,   
  12.      "level" :5,   
  13.      "gardener" :1   
  14.   }   
  15. );  

相比xml,json的好处是:天生的跨浏览器(比如我的这个demo应该可以跨所有支持dhtml的浏览器而不需要任何修改),客户端解析代价(CPU和内存)非常小,非单根结构(xml是单根结构),标记名只出现一次(xml的标记名在大多数情况下都需要出现两次:<tag>...</tag>,因此浪费了很多流量)
主要缺点是只支持get方式请求,另外跨编码(json资源的编码和引用页面的编码不同)的时候要做一些特殊处理。比如汉字可以预先escape。
此外很多人并不知道json可以异步获取,这个例子很重要的一点是展示了如何异步获取json。

感谢 http://www.blogjava.net/emu/  分享

JSON学习(二)


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论