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.zeali.net/entry/160

Javascript URL编码方法的比较相关推荐

  1. JS中URL编码方法的比较

    URL编码方法的比较 Posted by zeal on 2005-08-31 17:35 , 860 characters |  + 1 - 0   English 转载请保留本行原始出处声明信息 ...

  2. javascript URL实现简易书签

    简介 在HTML中,我们可以将js嵌入到script标签中,可以嵌入到行内代码中,也可以嵌入到src(href)中. 后者称作javascript URL.该方式的URL格式固定:javascript ...

  3. javascript:URL编解码和父子窗口交互

    简单的URL编解码 URL编码使用javascript的escape实现,在后台也可用System.Web.HttpUtility.UrlEncodeUnicode()实现. 在解码时使用javasc ...

  4. JavaScript URL编码 代码片段记忆

    //刷新预案列表 function gridReload(){ var name = jQuery("#fileName").val(); /** * URL特殊符号及编码: * ...

  5. JavaScript URL参数读取

    * 用法: * var args = getArgs( ); // 从 URL 解析出参数 * var q = args.q || ""; // 如果定义了某参数,则使用其值,否则 ...

  6. Javascript url 小逻辑

    情况1 : var xhr = new XMLHttpRequest(); xhr.open("GET", "/api/products", true); xh ...

  7. 通过url,获取html内容,并解析,如何使用 JavaScript 解析 URL

    在 Web 开发中,有许多情况需要解析 URL,这篇主要学习如何使用 URL 对象实现这一点. 开始 创建一个以下内容的 HTML 文件,并在浏览器中打开. JavaScript URL parsin ...

  8. 《JavaScript高级程序设计(第3版)》教程大纲

    词条 <JavaScript高级程序设计>是2006年人民邮电出版社出版的图书,作者是(美)(Nicholas C.Zakas)扎卡斯.本书适合有一定编程经验的开发人员阅读,也可作为高校相 ...

  9. url的三个js编码函数escape(),encodeURI(),encodeURIComponent()简介

    转载地址:http://www.haorooms.com/post/js_escape_encodeURIComponent 引子 浏览器URl地址,上网一定会用到,但是浏览器地址有中文或者浏览器ur ...

最新文章

  1. c语言基础知识pdf下载,C语言主基础知识.pdf
  2. java中磁盘和内存的相互,Java:有没有磁盘和内存一样快的情况?
  3. PLM在企业中的实际价值与意义
  4. 全面理解Javascript闭包和闭包的几种写法及用途
  5. 批量离线下载迅雷快传资源
  6. 幂等校验是什么意思_阿里面试官:接口的幂等性怎么设计?
  7. wxWidgets:wxWebViewEvent类用法
  8. 提示No Launcher activity found
  9. MySQL 优化 —— EXPLAIN 执行计划详解
  10. 安全威胁建模综述_如何使用威胁建模分析应用程序的安全性
  11. Node.js摸石头系列目录
  12. PHP的接口(interface)
  13. mysql的utf-8怎么用_记住:永远不要在MySQL中使用UTF-8
  14. python locust post 参数拼接md5_Locust性能测试--接口加密参数关联
  15. eyoucms个人网站去版权
  16. c++ map查找key
  17. android 扫描手机内存和SD卡,获取手机的视频、音频文件。把获取不到的文件扫描出来
  18. VUE时间范围选择的组件
  19. vue——axios请求成功却进入catch的原因
  20. ....他乡遇故知....

热门文章

  1. 浅谈 sessionStorage、localStorage、cookie 的区别以及使用
  2. hadoop生态搭建(3节点)-06.hbase配置
  3. 我对于js注入的理解
  4. iOS开发UI篇—UIWindow简单介绍
  5. apache ab test使用 单独安装ab和htpasswd
  6. Linux中crontab定时执行python程序
  7. Sierpinski三角形
  8. 安装flex4 plug-in插件的时候遇到老是在起始处安装不起
  9. C#中DateTime.Now.Ticks的用法和说明
  10. Citrix Receiver For Linux 预览版