预览加载中,请您耐心等待几秒...
1/7
2/7
3/7
4/7
5/7
6/7
7/7

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第十章JSON的应用 第十章JSON的应用 本章单词 1.collection:___________________2.dictionary:____________________ 3.record:_______________________4.associative:___________________ 5.pairs:________________________6.Natation:______________________ JSON即JavaScriptObjectNatation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript的交互。本文将快速讲解JSON格式,并通过代码示例演示如何分别在客户端和服务器端进 行JSON格式数据的处理。 尽管有许多宣传关于XML如何拥有跨平台,跨语言的优势,然而,除非应用于WebServices,否则, 在普通的Web应用中,开发者经常为XML的解析伤透了脑筋,无论是服务器端生成或处理XML,还是客 户端用JavaScript解析XML,都常常导致复杂的代码,极低的开发效率。实际上,对于大多数Web应 用来说,他们根本不需要复杂的XML来传输数据,XML的扩展性很少具有优势,许多AJAX应用甚至直 接返回HTML片段来构建动态Web页面。和返回XML并解析它相比,返回HTML片段大大降低了系统的 复杂性,但同时缺少了一定的灵活性。 现在,JSON为Web应用开发者提供了另一种数据交换格式。让我们来看看JSON到底是什么,同 XML或HTML片段相比,JSON提供了更好的简单性和灵活性。 10.1JSON的形式 JSON建构于两种结构: “名称/值”对的集合(Acollectionofname/valuepairs)。不同的语言中,它被理解为对象 (object),纪录(record),结构(struct),字典(dictionary),哈希表(hashtable),有 键列表(keyedlist),或者关联数组(associativearray)。 值的有序列表(Anorderedlistofvalues)。在大部分语言中,它被理解为数组(array)。 JSON具有以下这些形式: 对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结 束。每个“名称”后跟一个“:”(冒号);“‘名称/值’对”之间使用“,”(逗号)分隔。 第十章JSON的应用 数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值 之间使用“,”(逗号)分隔。 值(value)可以是双引号括起来的字符串(string)、数值(number)、true、false、null、对象(object) 或者数组(array)。这些结构可以嵌套。 字符串(string)是由双引号包围的任意数量Unicode字符的集合,使用反斜线转义。一个字符 (character)即一个单独的字符串(characterstring)。 字符串(string)与C或者Java的字符串非常相似。 第十章JSON的应用 数值(number)也与C或者Java的数值非常相似。除去未曾使用的八进制与十六进制格式。除去一 些编码细节。 10.2JSON的定义与使用 比如,后台载入一些用户的基本信息,如果写成XML,如下: <content> <user> <username>andy</username> <age>20</age> <info> <tel>123456</tel> 第十章JSON的应用 <cellphone>98765</tel> </info> <address> <city>Beijing</city> <postcode>222333</postcode> </address> <address> <city>newyork</city> <postcode>555666</postcode> </address> </user> </content> 而写成JSON呢: functionshowJSON(){ varuser= { "username":"andy", "age":20, "info":{"tel":"123456","cellphone":"98765"}, "address": [ {"city":"beijing","postcode":"222333"}, {"city":"newyork","postcode":"555666"} ] } alert(user.username); alert(user.age); aler