`
k_lb
  • 浏览: 795345 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论
  • kitleer: 据我所知,国内有款ETL调度监控工具TaskCTL,支持ket ...
    kettle调度

JavaScript中URL编码方法比较 Encode,Javascript,escape,encodeURI,encodeURIComponent,UTF-8

 
阅读更多

JavaScript内置了几个编码函数,他们的作用是有区别的。


javascript中存在几种对URL字符串进行编码的方法:escape(),encodeURI(),以及encodeURIComponent()。这几种编码所起的作用各不相同。
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版本就有。
来源:
http://www.cnblogs.com/lovablebox/archive/2007/12/03/981307.html


分享到:
评论

相关推荐

    GBK、UTF-8编码转换工具

    GBK、UTF-8批量文件3秒快速转码工具(支持GBK,UTF-8免费转换),UTF-8/GBK编码在线转换工具,压缩包可以有多目录与文件,如目录中有图片不会转码,但是会随转码好的文件一起打包下载。 使用帮助 . 上传压缩包(仅支持zip...

    Encode-Decode-ANSI-UTF-8.rar

    这个工具,是用来将中文编码为ansi或uft-8字符类型 ,或将ansi或uft-8字符类型 解码为中文

    js实现GBK编码,避免默认utf-8编码

    前端页面通过ajax发送请求,参数都是默认使用utf-8编码格式对参数进行url编码,这样的后果就是,当后台页面如果使用gbk编码的话,会出现乱码的情况,然后网上找到一个大神写的gbk.js. 但是里面没有做出详细介绍,这里...

    Delphi中UTF-8,Unicode格式转换

    delphi7调用delphi2009生成的dll文件会出现乱码问题。是unicode的原因 终于找到了UTF-8、Unicode格式转换函数

    Utf-8编码与解码(vb6代码)

    Utf-8编码与解码(vb6代码) 用VB做爬虫时遇到的乱码问题,编解码方式不对造成,用这个方法使各种编码方式之间互相转化

    utf8:UTF-8 字符编码的实用程序

    将 JavaScript 字符串编码为 UTF-8。 utf8 . encode ( 'JavaScript' ) ; 将 UTF-8 字符串解码为 JavaScript 字符串。 utf8 . decode ( 'JavaScript' ) 兼容性 成分 该模块使用格式。 要包含在组件构建中,请...

    Encode-decode UTF-8编解码工具

    ANSI 到 UTF-8的编解码工具。非常好用。

    utf8-regex-encode-decode-js:Utf8字符串使用正则表达式进行编码

    可以将javascript Unicode字符串编码为utf-8多个单字节字符。 可以通过unescape(encodeURIComponent(str))在JavaScript中实现相同的功能,但是这种方法在其他语言中可能很有用。 可以将utf-8编码的字符串解码回...

    lua-ansi转utf8 的dll

    local init_encode = package.loadlib("encode.dll","luaopen_encode") if init_encode then init_encode() else print('读取字符转换模块失败!') end ---------------------------------------------- -- 调用...

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

    最近在接口代码当中用到过json_encode,在网上找到说json_encode编码设置为UTF-8中文就不会乱码,经验证这办法确实是有效果的,但是不知道为什么,代码在用过一段时间之后就不太管用了。以下是自己的解决json_encode...

    javascript 字符 Escape,encodeURI,encodeURIComponent

    不会被此方法编码的字符: @ * / + encodeURI() 方法: 把URI字符串采用UTF-8编码格式转化成escape格式的字符串。 不会被此方法编码的字符:! @ # $& * ( ) = : / ; ? + ‘ encodeURIComponent() 方法: 把 URI字符...

    EncodeDecode & ANSI-UTF8编码转换工具

    EncodeDecode & ANSI-UTF8编码转换工具

    wtf8:Node 的 UTF-8 编码器和解码器

    UTF-8 解码器和编码器,可以处理 node.js 的基本多语言平面之外的字符。 它也相当快。 为什么? V8 不喜欢 4 字节的 UTF-8 字符。 :disappointed_face: 方法 .解码(缓冲区) 将包含 UTF-8 数据的缓冲区解码为 JS...

    jsp中URL传递中文参数的处理方法

    在页面的url中使用encodeURI(encodeURI(中文)),对中文进行编码,并在服务器的java程序中使用URLDecoder.decode(中文, “UTF-8”)进行解码即可; 如果url中需要传递+、#、?等特殊符号,可以使用encodeURIComponent...

    JS实现对中文字符串进行utf-8的Base64编码的方法(使其与Java编码相同)

    本文实例讲述了JS实现对中文字符串进行utf-8的Base64编码的方法。分享给大家供大家参考,具体如下: 要进行编码的字符串:“select 用户名 from 用户” 使用JAVA进行编码,Java程序: String sql = select 用户名 ...

    字符集转换_SAP字符集转换_SAP

    字符集转换_SAP字符集转换_SAP字符集转换_SAP

    cesu8:用于在CESU-8和UTF-8之间转换的库

    来自(BMP)的Unicode代码点,即U + 0000到U + FFFF范围内的代码点以与UTF-8相同的方式进行编码。 如果cesu8::encode()或cesu8::decode()仅遇到同时是有效CESU-8和UTF-8数据的数据,则cesu8板条箱将使用( )来利用...

    js中编码函数:escape,encodeURI与encodeURIComponent详解

    其它情况下escape,encodeURI,encodeURIComponent编码结果相同。  escape对0-255以外的unicode值进行编码时输出%u****格式  可以使用 unescape() 对 escape() 编码的字符串进行解码。  ECMAScript v3 反对使用该...

    简单明了区分escape、encodeURI和encodeURIComponent

    最关键的是,当你需要对URL编码时,请忘记这个方法,这个方法是针对字符串使用的,不适用于URL。 事实上,这个方法我还没有在实际工作中用到过,所以就不多讲了。 三、最常用的encodeURI和encodeURIComponent

    JS中三种编码方式(escape,encodeURI,encodeURIComponent)

    NULL 博文链接:https://liuzidong.iteye.com/blog/829204

Global site tag (gtag.js) - Google Analytics