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 相关文章推荐
File文件控件,选中文件(图片,flash,视频)即立即预览显示
Apr 09 Javascript
javaScript Array(数组)相关方法简述
Jul 25 Javascript
jQuery中removeProp()方法用法实例
Jan 05 Javascript
如何屏蔽防止别的网站嵌入框架代码
Aug 24 Javascript
javascript中活灵活现的Array对象详解
Nov 30 Javascript
Vue声明式渲染详解
May 17 Javascript
vue移动UI框架滑动加载数据的方法
Mar 12 Javascript
vue里面v-bind和Props 利用props绑定动态数据的方法
Aug 27 Javascript
微信小程序登录session的使用
Mar 17 Javascript
vue实现绑定事件的方法实例代码详解
Jun 20 Javascript
vue实现表单未编辑或未保存离开弹窗提示功能
Apr 08 Javascript
MutationObserver在页面水印实现起到的作用详解
Jul 07 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
通过文字传递创建的图形按钮
2006/10/09 PHP
PHP imagecreatefrombmp 从BMP文件或URL新建一图像
2012/07/16 PHP
php单例模式实现(对象只被创建一次)
2012/12/05 PHP
php向js函数传参的几种方法
2014/08/10 PHP
PHP使用file_get_content设置头信息的方法
2016/02/14 PHP
PHP设计模式之装饰器模式定义与用法详解
2018/04/02 PHP
PHP与Perl之间知识点区别整理
2019/03/19 PHP
jQuery 判断元素上是否绑定了事件
2009/10/28 Javascript
网站页面自动跳转实现方法PHP、JSP(上)
2010/08/01 Javascript
jQuery图片旋转插件jQueryRotate.js用法实例(附demo下载)
2016/01/21 Javascript
JS实现CheckBox复选框全选、不选或全不选功能
2020/07/28 Javascript
javascript实现简单计算器效果【推荐】
2016/04/19 Javascript
详解照片瀑布流效果(js,jquery分别实现与知识点总结)
2017/01/01 Javascript
react.js 获取真实的DOM节点实例(必看)
2017/04/17 Javascript
Vue利用canvas实现移动端手写板的方法
2018/05/03 Javascript
vue-router 源码实现前端路由的两种方式
2018/07/02 Javascript
JavaScript学习教程之cookie与webstorage
2019/06/23 Javascript
微信小程序实现手势滑动卡片效果
2019/08/26 Javascript
Node.js之删除文件夹(含递归删除)代码实例
2019/09/09 Javascript
vue watch监控对象的简单方法示例
2021/01/07 Vue.js
[50:27]Secret vs VG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
[01:00:53]OG vs IG 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
python中django框架通过正则搜索页面上email地址的方法
2015/03/21 Python
关于python的bottle框架跨域请求报错问题的处理方法
2017/03/19 Python
python编写分类决策树的代码
2017/12/21 Python
python 实现提取某个索引中某个时间段的数据方法
2019/02/01 Python
python实现微信每日一句自动发送给喜欢的人
2019/04/29 Python
python判断正负数方式
2020/06/03 Python
pycharm2020.1.2永久破解激活教程,实测有效
2020/10/29 Python
基于HTML5+tracking.js实现刷脸支付功能
2020/04/16 HTML / CSS
最美家庭活动方案
2014/08/31 职场文书
群众对十八届四中全会的期盼
2014/10/17 职场文书
2014年手术室工作总结
2014/11/26 职场文书
工作证明书
2015/06/15 职场文书
Keras多线程机制与flask多线程冲突的解决方案
2021/05/28 Python
SQL SERVER中的流程控制语句
2022/05/25 SQL Server