JSON技巧介绍
发布时间:2012-08-31 发布来源:
?
不仅为滥用权力而落空,也为滥用而落空。XML
——这种用于默示客户端与办事器间数据互换有效负载的格局,几乎已经成了Web
services的同义词。我们知道AJAX技巧可以或许使得每一次恳求加倍迅捷,对于每一次恳求返回的不是全部页面,也仅仅是所须要返回的数据。然而,因为
Ajax和REST技巧的呈现影响了应用法度架构,这迫使人们开端寻求`XML的调换品,如:JavaScript Object
Notation(JSON)。
JSON
作为一种更轻、更友爱的 Web services客户端的格局(多采取浏览器的情势或接见 REST风格
Web办事的Ajax应用法度的情势)引起了 Web
办事供给商的重视。凡是AJAX经由过程返回XML格局的数据,然后再经由过程客户端错杂的JavaScript脚本解析和衬着这些XML格局的数据。
JSON(读Jason)是为了可以或许使得数据格局成为一种标准,更简单的被JavaScript解析。
本文将论说JSON在Web services设计中备受推许的原因,以及它作为XML调换规划的首要上风和局限性。文中还会深切商量:跟着响应的Web 办事客户端选择应用JSON,如何才干便捷地在Java Web services中生成JSON输出。
json的官方文档:
JSON的长处
厚禄许会从天而降;金银财富许会不求自来;可是聪明非得我们本身去寻求不成
JSON语法是一种用于传输和生成数据的和谈,很类似于C家族的说话,所以很轻易被C家族的说话所解析。
对象:对象包含再{}之间
属性:采取Key-Value对来默示。属性之间应用逗号分隔。??string : value?
数组:数组存放再[]之间? ?[ elements ]?
元素:元素之间用逗号分隔
值:值可所以字符串,数字,对象,数组,true,false,null
麦奇生
例子:
JSON
{"menu": { "id": "file", "value": "File:", "popup": { "menuitem": [ {"value": "New", "onclick": "CreateNewDoc()"}, {"value": "Open", "onclick": "OpenDoc()"}, {"value": "Close", "onclick": "CloseDoc()"} ] } }} ?XML
<menu value="File" > <popup> <menuitem value="New" /> <menuitem value="Open" /> <menuitem value="Close" /> </popup> </menu> ?XML 的感化是格局化数据内容。若是我们不消XML还有什么更好的办法吗?这个答案是JSON。介绍JSON之前我先介绍一下JavaScript这门脚本语 言。脚本说话自身有动态履行的先天。即我们可以把想要履行的语句放在字符串里,经由过程eval()这个动态履行函数来履行。字符串里的内容会像我们写的脚本 一样被履行。
<HTML> <HEAD> <TITLE>eval example 1 </TITLE> </HEAD> <BODY> <script> str = "alert(""hello"")"; eval(str); </script> </BODY> </HTML> ?打开页面会弹出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> ?如 果我们在后台异步传来的文本是JavaScript的声明语句,那么不是一条eval办法就能解析了?对于解析错杂的XML,如许的效力是多么大的进步 啊!如今就来告诉你什么是JSON:JavaScript Object Notation。我更愿意把它翻译为JavaScript对象声明。比如要从后台载入一些通信录的信息,若是写成XML,如下:
<contact> <friend> <name>Michael </name> <email>17bity@gmail.com </email> <homepage> </homepage> </friend> <friend> <name>John </name> <email>john@gmail.com </email> <homepage> </homepage> </friend> <friend> <name>Peggy </name> <email>peggy@gmail.com </email> <homepage> </homepage> </friend> </contact>
?而写成JSON呢,就如下面:
[ { name:"Michael", email:"17bity@gmail.com", homepage:"http://www.jialing.net" }, { name:"John", email:"john@gmail.com", homepage:"http://www.jobn.com" }, { name:"Peggy", email:"peggy@gmail.com", homepage:"http://www.peggy.com" } ] ?简 单的不只是表达上,最首要的是可以丢弃让人晕头转向的DOM解析了。因为只要合适JavaScript的声明规范,JavaScrip会主动帮你解析好 的。Ajax中应用JSON的根蒂根基办法是前台载入后台声明JavaScript对象的字符串,用eval办法来将它转为实际的对象,最后经由过程 DHTML更新页面信息。
引自:
《更多网站建设信息、网站开发资讯,敬请咨询百微信息科技,021-57700304》