1:参数

传递参数时需要使用encodeURIComponent,这样组合的url才不会被#等特殊字符截断。

例如:<script language="javascript">document.write('<a href="http://passport.baidu.com/?logout&aid=7& u='+encodeURIComponent("http://cang.baidu.com/bruce42")+'">退出</a& gt;');</script>

2:网址

进行url跳转时可以整体使用encodeURI

例如:Location.href=encodeURI("http://cang.baidu.com/do/s?word=百度&ct=21");

3

js使用数据时可以使用escape

4

escape对0-255以外的unicode值进行编码时输出%u****格式,其它情况下escape,encodeURI,encodeURIComponent编码结果相同。最多使用的应为encodeURIComponent,它是将中文、韩文等特殊字符转换成utf-8格式的url编码,所以如果给后台传递参数需要使用encodeURIComponent时需要后台解码对utf-8支持(form中的编码方式和当前页面编码方式相同)

escape不编码字符有69个:*,+,-,.,/,@,_,0-9,a-z,A-Z

encodeURI不编码字符有82个:!,#,$,&,',(,),*,+,,,-,.,/,:,;,=,?,@,_,~,0-9,a-z,A-Z

encodeURIComponent不编码字符有71个:!, ',(,),*,-,.,_,~,0-9,a-z,A-Z

escape(str) 方法,它用于转义不能用明文正确发送的任何字符。比如,电话号码中的空格将被转换成字符 %20,从而能够在 URL 中传递这些字符

总结

推荐的做法是用encodeURI对URI的网址部分编码,

用encodeURIComponent对URI中传递的参数进行编码。     

解码部分就不说了,与编码方法相对应。

JS的编码:escape,encodeURI,encodeURIComponent,解码:unescape,decodeURI,decodeURIComp相关推荐

  1. js uri解码_js进行URL编码(escape,encodeURI,encodeURIComponent)

    如果URL存在汉字时,很容易出现乱码的现象.这是WEB开发中非常常见的一个问题. 不过由于笔者开发中比较注意各类文件的编码统一(即保持所有HTML,CSS,js的文件编码与页中的META中指定的编码一 ...

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

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

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

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

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

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

  5. [转]js escape,encodeURI,encodeURIComponent

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

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

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

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

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

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

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

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

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

最新文章

  1. 如何给机房的服务器安装系统,云机房服务器系统安装
  2. Winform分页控件之纯分页显示处理
  3. c#判断输入textbox是否为数字
  4. 【图解数据结构】二叉查找树
  5. 计算机鼠标不灵活怎么办,电脑鼠标不灵敏怎么调 玩LOL鼠标经常失灵怎么办
  6. Ansible 获取主机信息模块setup、获取文件详细信息模块stat(学习笔记十)
  7. 什么是Redis?什么是nosql?NoSQL数据库的四大分类
  8. 怎么把word转换ppt?
  9. 主板usb接口全部失灵_主板USB接口都无法使用故障
  10. Knowledge Distillation
  11. 身份证验证程序(一)
  12. mysql聚合函数匹配_MySQL 05章_模糊查询和聚合函数
  13. HTML|下拉框和文本域、文件域
  14. 【CCNA | 网络模拟器CPT系列】Cisco Packet Tracer 8.2.0 的安装 Ⅰ
  15. 深度学习(二十)基于Overfeat的图片分类、定位、检测
  16. 基于SPI协议下的OLED显示
  17. 中国真空退火炉行业市场供需与战略研究报告
  18. android上实时多点找色,多点找色进阶 - 【201512期】
  19. 微型计算机相关的英文文献,★计算机系统论文参考文献_计算机系统参考资料范文_计算机系统外文参考文献...
  20. c语言中用qt写换肤,让Qt应用程序支持换肤(Skin)功能

热门文章

  1. 「SVN」Linux下svn命令使用的实践,个人记录~=傻瓜教程
  2. Android-使用AIDL进程间通信
  3. 窗口分析函数_15_找出第一个元素
  4. matlab 2017 ubuntu,ubuntu安装matlab R2017,
  5. Activity生命周期的学习和验证
  6. 快速排序--Python实现
  7. 【Unity Shader】三、漫反射Diffuse Shader例子
  8. 2016及以后的自动化测试趋势 -《测试技术六月刊》
  9. Mangos源码分析(3):服务器结构探讨之简单的世界服实现
  10. 选好的两组台式机配置