js编码之encodeURIComponent使用介绍(asp,php)


Posted in Javascript onMarch 01, 2012

因为要新作系统,因此对于JS脚本又重新研究了一下。在对新的URL编码的时候发现,网页编码的格式对于JS的影响很大,在这里书写一点。

{var B=siteUrl+this.actionUrl+(this.type==="all"?"":this.type)+"&SearchWord="+encodeURIComponent(A).replace(/'/g,"%27");$redirect(B)}}

在制作的时候,发现传出去的数据包的编码全部是UTF-8格式的,而在改正网页编码后也同样没有反映,最后在修改了ENCODE成DECODE方式才解决问题。

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

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

例如:

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

例如:Location.href="/encodeURI"("https://3water.com/s?word=百度&ct=21");

3、 js使用数据时可以使用escape

例如:搜藏中history纪录。

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

Javascript 相关文章推荐
jquery特效 幻灯片效果示例代码
Jul 16 Javascript
利用jquery动画特效和css打造的侧边弹出垂直导航
Apr 04 Javascript
JQuery调用绑定click事件的3种写法
Mar 28 Javascript
初步认识JavaScript函数库jQuery
Jun 18 Javascript
jquery自适应布局的简单实例
May 28 Javascript
面包屑导航详解
Dec 07 Javascript
Js中将Long转换成日期格式的实现方法
Jun 05 Javascript
js数组去重的N种方法(小结)
Jun 07 Javascript
JavaScript设计模式之单例模式原理与用法实例分析
Jul 26 Javascript
mpvue小程序仿qq左滑置顶删除组件
Aug 03 Javascript
微信小程序中使用Async-await方法异步请求变为同步请求方法
Mar 28 Javascript
vue实现标签云效果的方法详解
Aug 28 Javascript
js FLASH幻灯片字符串中有连接符&的处理方法
Mar 01 #Javascript
JavaScript高级程序设计 读书笔记之十 本地对象Date日期
Feb 27 #Javascript
JavaScript高级程序设计 读书笔记之九 本地对象Array
Feb 27 #Javascript
JavaScript高级程序设计 读书笔记之八 Function类及闭包
Feb 27 #Javascript
JavaScript高级程序设计 阅读笔记(七) ECMAScript中的语句
Feb 27 #Javascript
JavaScript高级程序设计阅读笔记(六) ECMAScript中的运算符(二)
Feb 27 #Javascript
JavaScript高级程序设计阅读笔记(五) ECMAScript中的运算符(一)
Feb 27 #Javascript
You might like
PHP中的串行化变量和序列化对象
2006/09/05 PHP
两种php调用Java对象的方法
2006/10/09 PHP
PHP中读写文件实现代码
2011/10/20 PHP
解析strtr函数的效率问题
2013/06/26 PHP
PHP运行SVN命令显示某用户的文件更新记录的代码
2014/01/03 PHP
基于GD2图形库的PHP生成图片缩略图类代码分享
2015/02/08 PHP
Alliance vs AM BO3 第一场2.13
2021/03/10 DOTA
JavaScript表单常用验证集合
2008/01/16 Javascript
js操作ajax返回的json的注意问题!
2010/02/23 Javascript
JQuery动态给table添加、删除行 改进版
2011/01/19 Javascript
jQuery动态添加 input type=file的实现代码
2012/06/14 Javascript
jQuery Tools tooltip使用说明
2012/07/14 Javascript
JQuery中阻止事件冒泡几种方式及其区别介绍
2014/01/15 Javascript
使用VS开发 Node.js指南
2015/01/06 Javascript
JS实现超精简的链接列表在固定区域内滚动效果代码
2015/11/04 Javascript
js实现自定义路由
2017/02/04 Javascript
将input框中输入内容显示在相应的div中【三种方法可选】
2017/05/08 Javascript
React Native 通告消息竖向轮播组件的封装
2020/08/25 Javascript
微信小程序自动客服功能
2017/11/02 Javascript
Angular实现模版驱动表单的自定义校验功能(密码确认为例)
2018/05/17 Javascript
Vue数据双向绑定的深入探究
2018/11/27 Javascript
浅析vue-router中params和query的区别
2019/12/24 Javascript
[01:45]2014DOTA2 TI预选赛预选赛 大神专访第二弹!
2014/05/20 DOTA
Python引用(import)文件夹下的py文件的方法
2014/08/26 Python
Python如何判断数独是否合法
2016/09/08 Python
Python实现的中国剩余定理算法示例
2017/08/05 Python
python实现布隆过滤器及原理解析
2019/12/08 Python
Python注释、分支结构、循环结构、伪“选择结构”用法实例分析
2020/01/09 Python
python 使用csv模块读写csv格式文件的示例
2020/12/02 Python
详解appium自动化测试工具(monitor、uiautomatorviewer)
2021/01/27 Python
Python3利用openpyxl读写Excel文件的方法实例
2021/02/03 Python
css3中用animation的steps属性制作帧动画
2019/04/25 HTML / CSS
《最佳路径》教学反思
2014/04/13 职场文书
劳保用品管理制度范本
2015/08/06 职场文书
教你怎么用PyCharm为同一服务器配置多个python解释器
2021/05/31 Python
React如何使用axios请求数据并把数据渲染到组件
2022/08/05 Javascript