EXT.decode和EXT.encode方法.doc_第1页
EXT.decode和EXT.encode方法.doc_第2页
EXT.decode和EXT.encode方法.doc_第3页
EXT.decode和EXT.encode方法.doc_第4页
EXT.decode和EXT.encode方法.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

JSON到对象的转换(反序列化)方法,EXT.decode()和EXT.encode()方法【原】基础篇:第四篇,Ext中有两个很重要的方法,一个是decode;一个是encode. 在述说这个例子之前,我假想你已经知道什么是Json数据了,那么在这里在温习一下吧: JSON(JavaScript Object Notation) 是一种数据交换格式,采用完全独立于语言的文本格式; JSON建构于两种结构:“名称/值”对的集合和值的有序列表 下面详细说明下: “名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。 值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。 JSON具有以下这些形式: 对象是一个无序的“名称/值对”集合。一个对象以“”(左括号)开始,“”(右括号)结束。每个“名称”后跟一个“:”(冒号);“名称/值 对”之间使用“,”(逗号)分隔。 数组是值(value)的有序集合。一个数组以“”(左中括号)开始,“”(右中括号)结束。值之间使用“,”(逗号)分隔。 值(value)可以是双引号括起来的字符串(string)、数值(number)、 ture、false、 null、对象(object)或者数组(array)。这些结构可以嵌套。 字符串(string)是由双引号包围的任意数量Unicode字符的集合,使用反斜线转义。一个字符(character)即一个单独的字符串(character string)。 空白可以加入到任何符号之间 下面介绍Ext中两个很重要的方法,其实,Ext中没有多余的方法,每个方法都能够恰当好处的发挥它的作用,这里指它很重要,是因为它们太常用了,尤其是在与数据库交换数据的时候 Ext中有两个很重要的方法,一个是decode;一个是encode.顾名思义,一个是编码,一个是解码,你难道真的这么想吗? 严格的说,一个是将json字符串转换成对象;一个是将对象转换成json字符串 下面这个示例主要介绍的是Ext.decode()和Ext.encode()的用法,其中使用到了json格式的串,首先是用到了Ext.decode()方法,将json格式的串转换成对象,然后通过对象访问对象所包含的各个属性的值,通过消息框把它们显示出来;之后在用Ext.encode()将已经生成的对象转换成开始定义的json格式的串,也通过消息框把它们显示出来,加了一个函数,使得在第一个消息框弹出3秒钟后再弹出第二个消息框 用图片说明吧 /下面是将json字符串转换成对象后,通过对象访问属性生成的消息框 /下面是将上面生成的对象又转换成json字符串后生成的消息框 具体看下示例吧 测试Ext.decode()和Ext.encode()方法 function ready() /再用一个示例说明下如何使用decode和encode,现在我们已经知道什么是json数据格式了,也知道它的作用和语法了 /现在我们就开始演练吧 /先使用decode方法,这个方法是将json字符串转换成对象的 /第一步:先定义一个json字符串吧 var 刘天王 = 姓名:刘德华,性别:男,老家:香港; /第二步:现在我们要把刘天王转换成对象了 var who = Ext.decode(刘天王); /第三步:who成了对象后就相当于是类的对象了,里面的姓名,性别,老家都成了who的属性了,现在知道怎么通过对象访问属性了吧 var name = who.姓名; /获取who对象的姓名属性 var sex = who.性别; /获取who对象的性别属性 var home = who.老家; /获取who对象的老家属性 /第四步:下面将获取的信息组合起来 var result = 刘天王资料的信息:姓名是-+name + ;性别-+sex+;老家-+home; /第五步:我们把获取的who对象的信息用弹出消息的方式显示出来吧 Ext.Msg.alert(刘天王的资料信息,result); /以上就是将一个json字符串转换成对象后,再逐个访问对象的属性的示例 /下面使用encode方法 /encode方法很简单了,就是将上面生成的who对象再转换成第一步定义的json字符串 /定义一个到时间执行的函数 var getJson = function() /你完全可以把这段写在函数外面,之所以包含在里面纯属是为了在显示第一个消息框后再隔3秒显示下面这个消息窗口 var jsonStr = Ext.encode(who); /我们还是通过弹出消息的方式把这个json字符串显示出来吧 Ext.Msg.alert(jsonStr信息内容,jsonStr); ; /下面这个方法意思是:在3秒之后会调用函数getJson执行里面包含的脚本 setTimeout(getJson,3000); /补充点东西 /Ext.decode()和Ext.encode()分别是是 Ext.util.JSON.decode()和Ext.util.JSON.encode的简写 Ext.onReady(ready)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论