`

ExtJs中decode与encode

    博客分类:
  • ext
 
阅读更多

 

出自:http://blog.163.com/xiao_mege/blog/static/72942753201102693545195/

在述说这个例子之前,我假想你已经知道什么是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字符串转换成对象后,通过对象访问属性生成的消息框

Ext中中两个很重要的方法,一个是decode;一个是encode. - xiao_mege - 心在哪里,路就在哪里

//下面是将上面生成的对象又转换成json字符串后生成的消息框

Ext中中两个很重要的方法,一个是decode;一个是encode. - xiao_mege - 心在哪里,路就在哪里

具体看下示例吧

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="testDecode.aspx.cs" Inherits="Test.Example.hello.testDecode" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="
http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>测试Ext.decode()和Ext.encode()方法</title>
<link rel="Stylesheet" type="text/css" href="http://www.cnblogs.com/ExtJS/resources/css/ext-all.css" />
<link rel="Stylesheet" type="text/css" href="http://www.cnblogs.com/ExtJS/resources/css/xtheme-purple.css" />
<script type="text/javascript" src="http://www.cnblogs.com/ExtJS/adapter/ext/ext-base.js"></script>
<script type="text/javascript" src="http://www.cnblogs.com/ExtJS/ext-all.js"></script>
<script type="text/javascript" src="http://www.cnblogs.com/ExtJS/ext-lang-zh_CN.js"></script> 
</head>
<body>
<form id="form1" runat="server">
<div>
<script type="text/javascript">

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);
</script>
</div>
</form>
</body>
</html>

现在这个例子就可以说明Ext.decode()和Ext.encode()方法的完美作用了.

用图片说明吧

//下面是将json字符串转换成对象后,通过对象访问属性生成的消息框

Ext中中两个很重要的方法,一个是decode;一个是encode. - xiao_mege - 心在哪里,路就在哪里

//下面是将上面生成的对象又转换成json字符串后生成的消息框

Ext中中两个很重要的方法,一个是decode;一个是encode. - xiao_mege - 心在哪里,路就在哪里

分享到:
评论

相关推荐

    extjs 前后台交互参数出现中文乱码问题的解决方法

    在使用MyEclipse开发工具进行Web应用开发时,尤其是采用ExtJS框架结合Ajax技术进行前后端数据交互的过程中,可能会遇到一个常见的问题:即通过Ajax发送带有中文字符的数据时,后端接收到的数据出现乱码现象。...

    在Extjs中使用ajax传参到php中

    在EXTJS中与PHP进行数据交互是Web开发中常见的需求,尤其在构建富客户端应用时。EXTJS提供了AJAX组件,使得我们可以方便地通过HTTP请求向服务器发送数据,包括向PHP传递参数。以下是对这个主题的详细解释: 1. **...

    ExtJs-API中的一些重要的详解文档

    除此之外,ExtJS API还包含许多其他有用的工具函数,如`Ext.encode()`和`Ext.decode()`用于JSON编码和解码,`Ext.mixin()`用于混合类的功能,以及`Ext.create()`用于动态创建组件。这些函数和方法共同构成了ExtJS...

    extjs_php向后台提交json_post的接收方法实例

    在Web开发中,ExtJS是一个强大的JavaScript框架,用于构建富客户端应用程序。PHP则是一种服务器端脚本语言,常用于处理前端发送的数据。当ExtJS应用需要向PHP后端提交JSON数据时,通常会使用POST请求。然而,有时...

    Extjs核心api详解

    #### 一、Extjs概述与基础API Extjs是一个功能强大的JavaScript框架,用于构建复杂的Web应用程序。它提供了大量的UI组件、数据处理能力以及丰富的API来帮助开发者快速构建交互式界面。 #### 二、基础类与方法 在...

    ExtJS中文API

    ExtJS 是一个强大的JavaScript库...这些只是ExtJS API中的一部分功能,实际上它包含更多用于布局管理、数据绑定、表格、表单、图表等的高级功能。学习和掌握这些API将极大地提升你在构建复杂Web应用时的效率和灵活性。

    extjs核心api详解

    文章最后提到了Ext类的一些常用方法,如addBehaviors、apply、applyIf、decode、destroy、each、encode、escapeRe、extend、fly、get、getBody、getCmp等。这些方法提供了丰富的功能,如事件绑定、对象拷贝、JSON...

    ExtJSWeb应用程序开发指南(第2版)

    2.3 ExtJS中的基本概念 2.4 非常有用的开发工具 2.4.1 开发插件spket 2.4.2 FullSource 2.4.3 MicrosoftScriptDebugger 2.5 ExtJS对原有JavaScript对象的扩展 2.5.1 Ext.Array 2.5.2 Ext.Date 2.5.3 Ext....

    extjs帮助文档pdf版

    - `Ext.util.JSON.encode(data)`: 将JavaScript对象转换为JSON字符串。 - `Ext.util.JSON.decode(json)`: 将JSON字符串转换为JavaScript对象。 #### 19. Ext.util.Format 类 (P.20) - **概述**:提供了数据格式化...

    extjs帮助文档

    - `Ext.util.JSON.decode(json)`:从JSON字符串中解析出数据。 #### 十九、Ext.util.Format类(第20页) - **概述**:Ext.util.Format类提供了一组用于格式化数据的方法。 - **常用方法**: - `Ext.util.Format....

    qrcode zxing3.2.1

    通过调用`decode`方法,我们可以从图像中提取出编码的信息。ZXing的解析算法优化了速度和准确性,使其在处理不同质量的图像时表现出色。 ZXing库的灵活性在于它的模块化设计。例如,对于Java开发者,zxing-javase-...

    EXT JS 3.0 Core Class Diagram

    - `Ext.encode()`: 将JavaScript对象编码为JSON字符串。 - `Ext.extend()`: 创建新的类(构造函数),继承自父类。 - `Ext.fy()`: 将元素转换为`Ext.Element`对象。 - `Ext.get()`: 获取DOM元素。 - `Ext.id()`...

    Ext js2.1 最新资料汇总

    与 `apply` 类似,但只会在 `obj` 中不存在相同属性时才复制 `config` 中的属性。 **示例代码:** ```javascript var obj = { name: 'John' }; var config = { name: 'Jane', age: 30 }; applyIf(obj, config); ...

Global site tag (gtag.js) - Google Analytics