js中encode、decode的应用说明

encodeURIComponent

将文本字符串编码为一个统一资源标识符 (URI) 的一个有效组件。

encodeURIComponent(encodedURIString)

必选的encodedURIString参数代表一个已编码的 URI 组件。

说明
encodeURIComponent方法返回一个已编码的 URI。如果您将编码结果传递给decodeURIComponent,那么将返回初始的字符串。因为encodeURIComponent方法对所有的字符编码,请注意,如果该字符串代表一个路径,例如/folder1/folder2/default.html,其中的斜杠也将被编码。这样一来,当该编码结果被作为请求发送到 web 服务器时将是无效的。如果字符串中包含不止一个 URI 组件,请使用encodeURI方法进行编码。

escape 方法
返回一个可在所有计算机上读取的编码 String 对象。

function escape(charString : String) : String
参数
charString
必选。要编码的任何 String 对象或文本。
备注
escape 方法返回一个包含 charstring 内容的字符串值(Unicode 格式)。所有空格、标点、重音符号以及任何其他非 ASCII 字符都用 %xx 编码替换,其中 xx 等于表示该字符的十六进制数。例如,空格返回为“ ”。

字符值大于 255 的字符以 %uxxxx 格式存储。

注意 escape 方法不能用来对“统一资源标识符”(URI) 进行编码。对其编码应使用 encodeURI 和 encodeURIComponent 方法。
要求
版本 1

请参见
encodeURI 方法 | encodeURIComponent 方法 | String 对象 | 方法

适用于:Global 对象

encodeURI 方法
返回编码为有效的统一资源标识符 (URI) 的字符串。

function encodeURI(URIString : String) : String
参数
URIString
必选。表示编码 URI 的字符串。
备注
encodeURI 方法返回一个已编码的 URI。如果将编码结果传递给 decodeURI,则将返回初始的字符串。encodeURI 不对下列字符进行编码:“:”、“/”、“;”和“?”。请使用 encodeURIComponent 对这些字符进行编码。

要求
版本 5.5

请参见
decodeURI 方法 | decodeURIComponent 方法

适用于:Global 对象

encodeURIComponent 方法
返回编码为统一资源标识符 (URI) 的有效组件的字符串。

function encodeURIComponent(encodedURIString : String) : String
参数
encodedURIString
必选。表示编码 URI 组件的字符串。
备注
encodeURIComponent 方法返回一个已编码的 URI。如果将编码结果传递给 decodeURIComponent,则将返回初始的字符串。因为 encodeURIComponent 方法将对所有字符编码,请注意,如果该字符串代表一个路径,例如 /folder1/folder2/default.html,则其中的斜杠也将被编码,这样,当该字符串作为请求发送到 Web 服务器时它将是无效的。如果字符串中包含多个 URI 组件,请使用 encodeURI 方法进行编码。

要求
版本 5.5

请参见
decodeURI 方法 | decodeURIComponent 方法

适用于:Global 对象

方法
从用 escape 方法编码的 String 对象中返回已解码的字符串。

function (charString : String) : String
参数
charString
必选。要解码的 String 对象或文本。
备注
方法返回一个包含 charstring 内容的字符串值。所有以 %xx 十六进制形式编码的字符都用 ASCII 字符集当中等效的字符代替。

以 %uxxxx 格式(Unicode 字符)编码的字符用十六进制编码 xxxx 的 Unicode 字符代替。

注意 方法不应用于解码“统一资源标识符”(URI)。请改用 decodeURI 和 decodeURIComponent 方法。
要求
版本 1

请参见
decodeURI 方法 | decodeURIComponent 方法 | escape 方法 | String 对象

适用于:Global 对象

decodeURI 方法
返回一个已编码的统一资源标识符 (URI) 的非编码形式。

function decodeURI(URIstring : String) : String
参数
URIstring
必选。表示编码 URI 的字符串。
备注
使用 decodeURI 方法代替已经过时的 方法。

decodeURI 方法返回一个字符串值。

如果 URIString 无效,将发生 URIError。

要求
版本 5.5

请参见
decodeURIComponent 方法 | encodeURI 方法

适用于:Global 对象

decodeURIComponent 方法
返回统一资源标识符 (URI) 的一个已编码组件的非编码形式。

function decodeURIComponent(encodedURIString : String) : String
必选的 encodedURIString 参数是一个表示已编码的 URI 组件的值。

备注
URIComponent 是一个完整的 URI 的一部分。

如果 encodedURIString 无效,则将产生 URIError。

要求
版本 5.5

请参见
decodeURI 方法 | encodeURI 方法

[html]

Js encode,decode

a=62;
function encode() {
var code = document.getElementById(''code'').value;
code = code.replace(/[\r\n]+/g, '''');
code = code.replace(/''/g, "\\''");
var tmp = code.match(/\b(\w+)\b/g);
tmp.sort();
var dict = [];
var i, t = '''';
for(var i=0; i35?String.fromCharCode(c+29):c.toString(36))};if(!''''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return''\\\\w+''};c=1};while(c--)if(k[c])p=p.replace(new RegExp(''\\\\b''+e(c)+''\\\\b'',''g''),k[c]);return p}("
+ "''"+code+"'',"+a+","+len+",''"+ dict.join(''|'')+"''.split(''|''),0,{}))";
}
function num(c) {
return(c35?String.fromCharCode(c+29):c.toString(36));
}
function run() {
eval(document.getElementById(''code'').value);
}
function decode() {
var code = document.getElementById(''code'').value;
code = code.replace(/^eval/, '''');
document.getElementById(''code'').value = eval(code);
}

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

[/html]

更多对照可以参考下面的这篇文章 JavaScript 全局对象参考手册

(0)

相关推荐

  • 浅析php中json_encode()和json_decode()

    json_encode() 该函数主要用来将数组和对象,转换为json格式. 复制代码 代码如下: $arr = array ('a'=>'a','b'=>'b','c'='c','d'=>'d','e'='e');echo json_encode($arr); 输出结果: json只接受utf-8编码的字符,json_encode()的参数必须是utf-8编码. 复制代码 代码如下: class person{    public $name;    public $age;    p

  • php中json_encode UTF-8中文乱码的更好解决方法

    最近在接口代码当中用到过json_encode,在网上找到说json_encode编码设置为UTF-8中文就不会乱码,经验证这办法确实是有效果的,但是不知道为什么,代码在用过一段时间之后就不太管用了.以下是自己的解决json_encode的办法.有更好的方法请分享出来吧! 第一种: 这种简单的做一个代码转换,urlcode之后再返回所需数组 我代码这样就足够了. 代码如下 复制代码 public static function encodeOperations ($array) { foreac

  • JS中encodeURIComponent函数用php解码的代码

    JS中encodeURIComponent函数给中文编码后,如何用php解码?? 前提:编码前的中文可能是gbk,gb2312,utf-8等. 复制代码 代码如下: urldecode() iconv() 在JS中使用了encodeURIComponent对中文进行编码在PHP中使用iconv('UTF-8','gb2312',$q);就可以得到你需要的字串了,其中gb2312根据你实际应用来定如还不明白为什么看下面的文章 URL编码转换,escape() encodeURI() encodeU

  • JS的encodeURI和java的URLDecoder.decode使用介绍

    如果不想在url中看到有明文,比如http://localhost:8080/template_1/login.action?user=张三 可以使用js的encodeURI的URLDecoder.decode一起使用一起来把url加密下 (1)JS在页面上把数据var val = encodeURI(encodeURI("要传到服务器端的是值")); //调用2次encodeURI href="<%=basePath%>recordManager/test_js

  • JS对URL字符串进行编码/解码分析

    虽然escape().encodeURI().encodeURIComponent()三种方法都能对一些影响URL完整性的特殊 字符进行过滤.但后两者是将字符串转换为UTF-8的方式来传输,解决了页面编码不一至导致的乱码问 题.例如:发送页与接受页的编码格式(Charset)不一致(假设发送页面是GB2312而接收页面编码是 UTF-8),使用escape()转换传输中文字串就会出现乱码问题. 以下是JS下对URL进行编/解码的各种方法: escape 方法:返回一个可在所有计算机上读取的编码

  • javascript另类方法实现htmlencode()与htmldecode()函数实例分析

    本文实例讲述了javascript另类方法实现htmlencode()与htmldecode()函数.分享给大家供大家参考,具体如下: 最常见的做法是采用正则表达式替换的方法,将特殊字符如 < > & 等进行替换,htmlencode的时候这样替换还比较容易,但发过来htmldecode的时候就不一定好用了,因为需要反转的情况很多,出了常见的<>&以外,还有 ©"®等数十个字符实体,还有AB中文或者中文之类以字符的Unicode编码的十进制或16进制表示的

  • php中json_decode()和json_encode()的使用方法

    1.json_decode() json_decode (PHP 5 >= 5.2.0, PECL json >= 1.2.0) json_decode - 对 JSON 格式的字符串进行编码 说明 mixed json_decode ( string $json [, bool $assoc ] ) 接受一个 JSON 格式的字符串并且把它转换为 PHP 变量 参数 json 待解码的 json string 格式的字符串. assoc 当该参数为 TRUE 时,将返回 array 而非 o

  • javascript encodeURI和encodeURIComponent的比较

    背景 encodeURI 和 encodeURIComponent都是ECMA-262标准中定义的函数,所有兼容这个标准的语言(如JavaScript, ActionScript)都会实现这两个函数.它们都是用来对URI (RFC-2396)字符串进行编码的全局函数,但是它们的处理方式和使用场景有所不同.为了解释它们的不同,我们首先需要理解RFC-2396中对于URI中的字符分类 保留字符(reserved characters):这类字符是URI中的保留关键字符,它们用于分割URI中的各个部分

  • javascript HTMLEncode HTMLDecode的完整实例(兼容ie和火狐)

    方法一: 用的浏览器内部转换器实现转换,方法是动态创建一个容器标签元素,如DIV,将要转换的字符串设置为这个元素的innerText(ie支持)||textContent(火狐支持),然后返回这个元素的innerHTML,即得到经过HTML编码转换的字符串,显示的时候反过来就可以了(实际上显示的时候不用通过转换,直接赋值在div就可以正常显示的). 复制代码 代码如下: <script type="text/javascript"> function HTMLEncode(

  • php数组转换js数组操作及json_encode的用法详解

    对于php,个人感觉能够熟练操作数组和字符串,基本上已经是入门了,php本身有很多操作数组和字符串的函数,今天在做一个功能时,需要用Js动态的创建门店信息,这些信息是要从后台添加的,想来想去,通过php读取数据库,得到数组,然后将数组转化成符合需求js数组,php数组形式为: 复制代码 代码如下: $newArray = array(array('地区'=>'北京地区','items'=>'10','detail'=>array(0=>array('店名'=>'旗舰店','u

随机推荐