javascript 常用的编码格式有:escape(), encodeURL(), encodeURIComponent() 区别如下:
调用方式 为 var str= encodeURIComponent("www.163.com")
escape() 方法:
采用ISO Latin字符集对指定的字符串进行编码。所有的空格符、标点符号、特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集表里面的编码的16进制数字)。比如,空格符对应的编码是%20。
不会被此方法编码的字符: @ * / +
encodeURI() 方法:
把URI字符串采用UTF-8编码格式转化成escape格式的字符串。
不会被此方法编码的字符:! @ # $& * ( ) = : / ; ? + '
encodeURIComponent() 方法:
把URI字符串采用UTF-8编码格式转化成escape格式的字符串。与encodeURI()相比,这个方法将对更多的字符进行编码,比如 / 等字符。所以如果字符串里面包含了URI的几个部分的话,不能用这个方法来进行编码,否则 / 字符被编码之后URL将显示错误。
不会被此方法编码的字符:! * ( ) '
因此,对于中文字符串来说,如果不希望把字符串编码格式转化成UTF-8格式的(比如原页面和目标页面的charset是一致的时候),只需要使用escape。如果你的页面是GB2312或者其他的编码,而接受参数的页面是UTF-8编码的,就要采用encodeURI或者encodeURIComponent。
另外,encodeURI/encodeURIComponent是在javascript1.5之后引进的,escape则在javascript1.0版本就有。
下面是用GBK方式进行url编码
var asfman = {};
asfman.urlEncode = function(str)
{
window.execScript("Function vbsFun(str):vbsFun=hex(asc(str)):End Function","vbscript");
var gObject={};
return str.replace(/[\x00-\xff]/g,function(a)
{
return a.replace(/[^0-9a-zA-Z]/g,function(b){
if(!gObject[b])
gObject[b]="%"+vbsFun(b);
return gObject[b];
})
}).replace(/[^\x00-\xff]/g,function(c){
return c.replace(/./g,function(d)
{
if(!gObject[d])
gObject[d]= vbsFun(d).replace(/(..)(..)/,"%$1%$2");
return gObject[d];
})
}).replace(/%20/g,"+")
}; alert(asfman.urlEncode('美女'));
分享到:
相关推荐
### JS实现URL编码转换中文 在Web开发过程中,经常需要处理URL中的特殊字符,特别是中文字符。由于URL传输限制及浏览器解析原因,中文等非ASCII字符需要被编码为特定格式才能在网络上传输。本文将详细介绍如何使用...
2. **URL编码**:JavaScript的`encodeURIComponent`函数可以对字符串进行URL编码,但默认它只处理UTF-8编码。为了GBK编码的字符串能正确编码,需要先将GBK编码后的字节序列转换为 `%xx` 形式,这可以通过遍历字节...
本文将深入探讨如何使用JavaScript(简称JS)来解码这些URL编码,使其转换回原本的中文或其他非英文字符。 ### URL编码与解码原理 URL编码的主要目的是确保URL中的所有字符都能在网络上传输,避免因特殊字符导致的...
js函数把base64编码还原成unicode的数据 然后直接调用URL编码函数对数据进行编码返回。就得到易语言支持的url编码unicode字节集的结果。有可能的话我建议精易模块也收录一下或者做一下这方便的URL编码。@龙卷风暴。
在实际编程中,大多数编程语言都提供了内置函数来自动进行URL编码和解码,如JavaScript的`encodeURIComponent()`和`decodeURIComponent()`,Python的`urllib.parse.quote()`和`urllib.parse.unquote()`等。...
JavaScript 对 URL 编码解码 JavaScript 中对 URL 编码和解码涉及到六个函数:escape、encodeURI、encodeURIComponent、unescape、decodeURI 和 decodeURIComponent。这六个函数的使用场景和特点分别是: escape ...
在实际应用中,URL编码不仅限于手动操作,许多编程语言如JavaScript、Python、Java等都提供了内置函数来自动处理URL编码和解码。例如,JavaScript中的`encodeURIComponent()`和`decodeURIComponent()`函数,可以方便...
例如,Apache Commons Lang库提供了`StringEscapeUtils`类,用于对字符串进行编码和解码,包括URL编码。此外,Java的`java.net.URLDecoder`和`java.net.URLEncoder`类也提供了URL编码和解码的功能。 文件的编码方式...
在编程语言中,如JavaScript、Python、Java等,都有内置函数可以方便地对字符串进行URL编码和解码。例如,JavaScript的`encodeURIComponent()`和`decodeURIComponent()`函数,Python的`urllib.parse.quote()`和`...
另外,虽然在大多数情况下,URL编码遵循ASCII标准,但在Unicode环境中,URL编码也可以扩展到包含非ASCII字符,这通常被称为“ Punycode”转换。 在实际开发中,了解并正确使用URL编码和解码不仅能保证数据的完整性...
URL编码主要涉及对URL中的特殊字符进行转换,以避免这些字符在传输过程中引起解析错误或产生歧义。 RFC3986是定义URI语法的官方标准,它规定了URL中哪些字符是安全的,哪些需要进行编码。安全字符包括英文字母(a-...
前端页面通过ajax发送请求,参数都是默认使用utf-8编码格式对参数进行url编码,这样的后果就是,当后台页面如果使用gbk编码的话,会出现乱码的情况,然后网上找到一个大神写的gbk.js. 但是里面没有做出详细介绍,这里...
URL编码是根据RFC 3986标准进行的,主要使用百分号(%)表示非ASCII字符或特殊字符的ASCII十六进制值。例如,空格被编码为"%20"。编码过程通常是将URL中的每个非字母数字字符转换为其对应的ASCII值,并用"%xx"的形式...
虽然escape()、encodeURI()、encodeURIComponent()三种方法都能... 以下是JS下对URL进行编/解码的各种方法: escape 方法:返回一个可在所有计算机上读取的编码 String 对象。 function escape(charString : String) :
1. **编程语言内置函数**:在大多数编程语言中,如Java、Python、JavaScript,都有内置的函数来处理URL编码和解码,例如JavaScript的 `encodeURIComponent()` 和 `decodeURIComponent()` 函数。 2. **在线工具**:...
1. `encode_url`: 这个方法会接收一个包含非ASCII或特殊字符的字符串,并对其进行URL编码。它可能会遍历字符串中的每个字符,对于非字母数字的字符,使用`%`加上其ASCII值的十六进制表示。 2. `decode_url`: 这个...
4. **工具使用**:"URL编码解码工具.exe" 是一款实用的小程序,可以帮助用户快速对URL进行编码和解码。用户只需输入待处理的URL,工具会自动执行相应的操作,并显示结果。这对于开发者调试HTTP请求,或者理解网页...
情况4:使用Javascript进行URL编码。在Java中可以使用java.net.URLDecoder.decode(request.getParameter("drug_id"), "UTF-8")进行解码,而在使用Ext框架时,可以使用encodeURI(encodeURI(Ext.get('drug_id').dom....
在Web开发中,当我们需要在URL中包含空格或其他非字母数字字符时,就需要对这些字符进行编码。这是因为URL只允许使用ASCII字符集中的一部分字符,而其他字符可能会引起解析错误。 URL编码遵循统一资源标识符(URI)...
4. 如果是UTF-8编码,程序会对每个字符进行编码,对每个字节进行URL编码。 5. 用户可以切换不同的编码格式,程序会进行相应的解码操作。 6. 最后,程序显示转换后的URL或字符串,供用户查看和复制。 这个程序的界面...