JavaScript中有三个可以对字符串编码的函数,分别是: escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent

  1. escape()函数
    escape() 函数可对字符串进行编码,某些字符被替换成了十六进制的转义序列该方法不会对 ASCII 字母和数字进行编码,也不会对下面这些 ASCII 标点符号进行编码:- _ . ! ~ * ' ( ) 。其他所有的字符都会被转义序列替换。
  2. encodeURI()函数
    encodeURI() 函数可把字符串作为 URI 进行编码
    该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码:- _ . ! ~ * ' ( )
    该方法的目的是对 URI 进行完整的编码,因此对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() 函数是不会进行转义的:;/?:@&=+$,#
  3. encodeURIComponent() 函数
    encodeURIComponent() 函数可把字符串作为 URI 组件进行编码
    该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( )
    其他字符(比如 :;/?:@&=+$,#这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的
    提示和注释
    提示:请注意 encodeURIComponent() 函数 与 encodeURI() 函数的区别之处,前者假定它的参数是 URI 的一部分(比如协议、主机名、路径或查询字符串)。因此 encodeURIComponent() 函数将转义用于分隔 URI 各个部分的标点符号

escape()除了 ASCII 字母、数字和特定的符号外,对传进来的字符串全部进行转义编码,因此如果想对URL编码,最好不要使用此方法。而encodeURI() 用于编码整个URI,因为URI中的合法字符都不会被编码转换。encodeURIComponent方法在编码单个URIComponent(指请求参数)应当是最常用的,它可以讲参数中的中文、特殊字符进行转义,而不会影响整个URL。

escape()、encodeURI()、encodeURIComponent()区别相关推荐

  1. escape,encodeURI,encodeURIComponent有什么区别?

    一.escape escape是对字符串进行编码,使得可以在所有的电脑上可读,但是encodeURI和encodeURIComponent是对URL进行编码的.escape和后两者几乎没关系. esc ...

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

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

  3. url的三个js编码函数escape(),encodeURI(),encodeURIComponent()简介【转】

    引子 浏览器URl地址,上网一定会用到,但是浏览器地址有中文或者浏览器url参数操作的时候,经常会用到encodeURIComponent()和decodeURIComponent()以及encode ...

  4. js 编码解码 escape,encodeURI,encodeURIComponent

    js对文字进行编码涉及3个函数:escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent 1 ...

  5. js 文字转码 escape,encodeURI,encodeURIComponent(marksheng)

    js对文字进行转码的3个函数:escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent 1. ...

  6. [转]js escape,encodeURI,encodeURIComponent

    js对文字进行编码涉及3个函数:escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent 1 ...

  7. JS中URL中的特殊字符问题:escape,encodeURI,encodeURIComponent(转)

    在使用url进行参数传递时,经常会传递一些中文名(或含有特殊字符)的参数或URL地址,在后台处理时会发生转换错误.在有些传递页面使用GB2312,而在接收页面使用UTF8,这样接收到的参数就可能会与原 ...

  8. URL转码escape() encodeURI() encodeURIComponent()

    转:http://deony2jacob1314.iteye.com/blog/1753068 js对文字进行编码涉及3个函数:escape,encodeURI,encodeURIComponent, ...

  9. 【定义+用法+区别+使用场景】escape(),encodeURI(),encodeURIComponent()

    文章目录 一.escape 二.encodeURI 三.encodeURIComponent 四.encodeURI和encodeURIComponent的不同点 五.使用场合 一.escape es ...

  10. JS的编码:escape,encodeURI,encodeURIComponent,解码:unescape,decodeURI,decodeURIComp

    1:参数 传递参数时需要使用encodeURIComponent,这样组合的url才不会被#等特殊字符截断. 例如:<script language="javascript" ...

最新文章

  1. HDU 2149.Public Sale-巴什博奕
  2. 图像投影特征图的波峰波谷查找的相关原理及利用差分遍历法查找波峰的OpenCV代码
  3. 《梦断代码》读后笔记_2
  4. lisp 标记形心_标记-压缩算法
  5. 【完结】AI1000问以后知识星球和B站见啦
  6. spring中AOP动态代理的两种方式
  7. .NET CORE 怎么样从控制台中读取输入流
  8. bitcount java_java-Long.bitCount()如何找到设置的位数?
  9. 【MATLAB】混合粒子群算法原理、代码及详解
  10. solr后台登录验证
  11. SAP CRM Transaction处理中的权限控制
  12. fedora 19 gnome 3.8 关闭笔记本盖子的动作
  13. php方法重载方法重写_Java基础之方法的重载
  14. 2016ICPC沈阳站总结
  15. rem + vw 布局
  16. python求相关系数_python 求相关系数
  17. 石墨烯海水淡化lammps模拟建模方法
  18. 什么是 DOM 和 BOM?
  19. 开源机器学习之MATLAB代码--LSTM-SVRNN(五)
  20. [Python中的除法、除法取整、除法取余] [运算符分别为:/、//、%]

热门文章

  1. ACM-ICPC训练行动路线图
  2. KMP算法(C++版)
  3. everything 全盘文件查找工具及正则表达式的使用
  4. 【网络】无法解析服务器的DNS地址?;能登陆QQ,无法打开网页
  5. matplotlib tricks —— 平滑方法
  6. utilities(matlab)—— 多元函数的数值梯度
  7. 标准模板库(STL)之 map 列传 (三)
  8. 在 const 和 non-const 重载的成员函数中避免代码重复
  9. 程序结构程序设计(三)
  10. mysql 字段加减_MySQL数据库开发常见问题及优化(续)