



免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
什么是JSON?JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成。它基于ECMA262语言规范(1999-12第三版)中JavaScript编程语言的一个子集。 JSON采用与编程语言无关的文本格式,但是也使用了类C语言(包括C, C+, C#, Java, JavaScript, Perl, Python等)的习惯,这些特性使JSON成为理想的数据交换格式。JSON与XML的比较可读性JSON和XML的可读性可谓不相上下,一边是建议的语法,一边是规范的标签形式,很难分出胜负。可扩展性XML天生有很好的扩展性,JSON当然也有,没有什么是XML能扩展,JSON不能的。不过JSON在Javascript主场作战,可以存储Javascript复合对象,有着xml不可比拟的优势。编码难度XML有丰富的编码工具,比如Dom4j、JDom等,JSON也有提供的工具。无工具的情况下,相信熟练的开发人员一样能很快的写出想要的xml文档和JSON字符串,不过,xml文档要多很多结构上的字符。JSON定义 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成。它基于ECMA262语言规范(1999-12第三版)中JavaScript编程语言的一个子集。 JSON采用与编程语言无关的文本格式,但是也使用了类C语言(包括C, C+, C#, Java, JavaScript, Perl, Python等)的习惯,这些特性使JSON成为理想的数据交换格式。JSON的结构基于下面两点1. 名称/值对的集合 不同语言中,它被理解为对象(object),记录(record),结构(struct),字典(dictionary),哈希表(hash table),键列表(keyed list)等 2. 值的有序列表 多数语言中被理解为数组(array) JSON使用:JSON以一种特定的字符串形式来表示 JavaScript 对象。如果将具有这样一种形式的字符串赋给任意一个 JavaScript 变量,那么该变量会变成一个对象引用,而这个对象就是字符串所构建出来的,好像有点拗口,我们还是用实例来说明。 按照最简单的形式,可以用下面这样的 JSON 表示名称/值对: firstName: Brett 这个示例非常基本,而且实际上比等效的纯文本名称/值对占用更多的空间:firstName=Brett但是,当将多个名称/值对串在一起时,JSON 就会体现出它的价值了。首先,可以创建包含多个名称/值对的记录这里假设我们需要创建一个User对象,并具有以下属性用户ID 用户名 用户Email 您可以使用以下JSON形式来表示User对象:UserID:11, Name:Truly, Email:;然后如果把这一字符串赋予一个JavaScript变量,那么就可以直接使用对象的任一属性了。完整代码:var User = UserID:11, Name:Truly, Email:;alert(User.Name);实际使用时可能更复杂一点,比如我们为Name定义更详细的结构,使它具有FirstName和LastName:UserID:11, Name:FirstName:Truly,LastName:Zhu, Email:完整代码:var User = UserID:11, Name:FirstName:Truly,LastName:Zhu, Email:;alert(User.Name.FirstName);现在我们增加一个新的需求,我们某个页面需要一个用户列表,而不仅仅是一个单一的用户信息,那么这里就需要创建一个用户列表数组。下面代码演示了使用JSON形式定义这个用户列表: UserID:11, Name:FirstName:Truly,LastName:Zhu, Email:,UserID:12, Name:FirstName:Jeffrey,LastName:Richter, Email:,UserID:13, Name:FirstName:Scott,LastName:Gu, Email:完整代码: var UserList = UserID:11, Name:FirstName:Truly,LastName:Zhu, Email:,UserID:12, Name:FirstName:Jeffrey,LastName:Richter, Email:,UserID:13, Name:FirstName:Scott,LastName:Gu, Email:;alert(UserList0.Name.FirstName);事实上除了使用.引用属性外,我们还可以使用下面语句:alert(UserList0NameFirstName); 或者 alert(UserList0.NameFirstName); json的修改:UserList. UserID0 = “01”在将字符串转换为 JavaScript 对象之后,就可以像这样修改变量中的数据。完整事例:function jsontest() /json var jsontext = person:weight:75kg,age:24,num:1,2,3,4; /解析json var obj= eval(+jsontext+);/通过eval() 函数可以将JSON字符串转化为对象。/var jsontext = jsontext.parseJSON();/第二种转换 /取出json中的信息 alert(obj.person.weight);现在读者应该对JSON的使用有点认识了,归纳为以下几点:1.对象是属性、值对的集合。一个对象的开始于“”,结束于“”。每一个属性名和值间用“:”提示,属性间用“,”分隔。 2.数组是有顺序的值的集合。一个数组开始于,结束于,值之间用,分隔。 3.值可以是引号里的字符串、数字、true、false、null,也可以是对象或数组。这些结构都能嵌套。 4.字符串和数字的定义和C#或Java基本一致。 Json应用var Person = Name:TerryLee,Age:25;function myObject()return Person;public class Personpublic String Name get; set; public int Age get; set; void btnInvoke_Click(object sender, RoutedEventArgs e)ScriptObject script = HtmlPage.Window.Invoke(myObject, null)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版文旅产业商业合作总协议
- 2025年文化旅游产业财务策划服务协议
- 诺如病毒培训知识小结课件
- 纪念白求恩课件
- 语音课件教学课件
- 语音干货知识培训课件
- 2025购销合同争议管辖权异议申请书范文
- 语言文字知识培训课件
- 2025年财务、审计岗位劳动合同模板(或范文)
- 2025智能监控系统维护保养合同
- 2025年血透室透析液污染应急预案演练脚本
- 医院空气净化管理标准解析
- 风机噪声控制材料研究及使用方法
- 吴伯萧名篇阅读理解与教学设计
- 各阶段样件管理办法
- 2025年服务行业技能考试-电教员历年参考题库含答案解析(5套100道单选题合辑)
- 高职院校实训室管理办法
- 公务摄影培训课件下载
- 危险化学品生产许可证实施细则(一)(危险化学品无机产品部分)
- 德瑞斯D600变频器说明书
- 黍离教学课件
评论
0/150
提交评论