JSON技术介绍

  XML——这种用于表示客户端与服务器间数据交换有效负载的格式,几乎已经成了Web services的同义词。咱们知道AJAX技术可以使得每一次请求更加迅捷,对于每一次请求返回的不是整个页面,也仅仅是所须要返回的数据。然而,因为Ajax和REST技术的出现影响了应用程序架构,这迫令人们开始寻求`XML的替代品,如:JavaScript Object Notation(JSON)。html

  JSON 做为一种更轻、更友好的 Web services客户端的格式(多采用浏览器的形式或访问 REST风格 Web服务的Ajax应用程序的形式)引发了 Web 服务供应商的注意。一般AJAX经过返回XML格式的数据,而后再经过客户端复杂的JavaScript脚本解析和渲染这些XML格式的数据。JSON(读Jason)是为了可以使得数据格式成为一种标准,更简单的被JavaScript解析。json

  本文将阐述JSON在Web services设计中备受推崇的缘由,以及它做为XML替代方案的主要优点和局限性。文中还会深刻探讨:随着相应的Web 服务客户端选择使用JSON,如何才能便捷地在Java Web services中生成JSON输出。数组

  json的官方文档:http://www.json.org/json-zh.htmlhttp://www.mlyrx120.com浏览器

  JSON的优势服务器

  轻量级的数据交换格式架构

  人们读写更加容易异步

  易于机器的解析和生成函数

  可以经过JavaScript中eval()函数解析JSONui

  JSON支持多语言。包括:ActionScript, C, C#, ColdFusion, E, Java, JavaScript, ML, Objective CAML, Perl, PHP, Python, Rebol, Ruby, and Lua..net

  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

  XML 的做用是格式化数据内容。若是咱们不用XML还有什么更好的方法吗?这个答案是JSON。介绍JSON以前我先介绍一下JavaScript这门脚本语 言。脚本语言自身有动态执行的天赋。即咱们能够把想要执行的语句放在字符串里,经过eval()这个动态执行函数来执行。字符串里的内容会像咱们写的脚本 同样被执行。

  打开页面会弹出hello窗口。咱们能够在字符串中听任何脚本语句,包括声明语句,等等一系列东西,好比:

  若是咱们在后台异步传来的文本是JavaScript的声明语句,那么不是一条eval方法就能解析了?对于解析复杂的XML,这样的效率是多么大的提升啊!如今就来告诉你什么是JSON:JavaScript Object Notation。我更愿意把它翻译为JavaScript对象声明。好比要从后台载入一些通信录的信息,若是写成XML,以下:

  Michael

  17bity@gmail.com

  http://www.jialing.net

  John

  john@gmail.com

  http://www.john.com

  Peggy

  peggy@gmail.com

  http://www.peggy.com

  而写成JSON呢,就以下面:

  [

  {

  name:"Michael",

  email:"17bity@gmail.com",

  homepage:"http://www.jialing.net"

  },

  {

  name:"John",

  email:"john@gmail.com",

  homepage:"http://www.jobn.com"http://rl.82676666.com

  },

  {

  name:"Peggy",

  email:"peggy@gmail.com",

  homepage:"http://www.peggy.com"

  }

  ]

  简单的不仅是表达上,最重要的是能够丢弃让人晕头转向的DOM解析了。由于只要符合JavaScript的声明规范,JavaScrip会自动帮你解析好 的。Ajax中使用JSON的基本方法是前台载入后台声明JavaScript对象的字符串,用eval方法来将它转为实际的对象,最后经过 DHTML更新页面信息。

相关文章
相关标签/搜索