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 相关文章推荐
javascript 对象的定义方法
Jan 10 Javascript
Jquery写一个鼠标拖动效果实现原理与代码
Dec 24 Javascript
javascript函数作用域学习示例(js作用域)
Jan 13 Javascript
javascript中动态函数用法实例分析
May 14 Javascript
JS+CSS实现美化的下拉列表框效果
Aug 11 Javascript
jQuery简单操作cookie的插件实例
Jan 13 Javascript
node.js实现爬虫教程
Aug 25 Javascript
详谈Angular 2+ 的表单(一)之模板驱动型表单
Apr 25 Javascript
Angularjs验证用户输入的字符串是否为日期时间
Jun 01 Javascript
vue 微信授权登录解决方案
Apr 10 Javascript
JS实现获取毫秒值及转换成年月日时分秒的方法
Aug 15 Javascript
基于JS抓取某高校附近共享单车位置 使用web方式展示位置变化代码实例
Aug 27 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
咖啡豆要不要放冰箱的原因
2021/03/04 冲泡冲煮
php代码中使用换行及(\n或\r\n和br)的应用
2013/02/02 PHP
php调整服务器时间的方法
2015/04/03 PHP
10个php函数实用却不常见
2015/10/13 PHP
Js基础学习资料
2010/11/23 Javascript
基于jQuery的动态表格插件
2011/03/28 Javascript
jQuery对表单的操作代码集合
2011/04/06 Javascript
IE8对JS通过属性和数组遍历解析不一样的地方探讨
2013/05/06 Javascript
js判断数据类型如判断是否为数组是否为字符串等等
2014/01/15 Javascript
JavaScript 获取任一float型小数点后两位的小数
2014/06/30 Javascript
node.js中的fs.fsync方法使用说明
2014/12/15 Javascript
浅谈javascript对象模型和function对象
2014/12/26 Javascript
给angular加上动画效遇到的问题总结
2016/02/17 Javascript
Node.js中的cluster模块深入解读
2018/06/11 Javascript
JavaScript设计模式之享元模式实例详解
2019/01/17 Javascript
详解vue 路由跳转四种方式 (带参数)
2019/04/28 Javascript
详解Vue中组件传值的多重实现方式
2019/08/16 Javascript
jQuery zTree插件快速实现目录树
2019/08/16 jQuery
浅谈layui 数据表格前后台传值的问题
2019/09/12 Javascript
如何手动实现一个 JavaScript 模块执行器
2020/10/16 Javascript
[14:57]DOTA2 HEROS教学视频教你分分钟做大人-幽鬼
2014/06/13 DOTA
树莓派中python获取GY-85九轴模块信息示例
2013/12/05 Python
python操作redis方法总结
2018/06/06 Python
pycharm运行出现ImportError:No module named的解决方法
2018/10/13 Python
Python Matplotlib实现三维数据的散点图绘制
2019/03/19 Python
python文字转语音实现过程解析
2019/11/12 Python
input元素的url类型和email类型简介
2012/07/11 HTML / CSS
捷克玩具商店:Bambule
2019/02/23 全球购物
关于爱情的广播稿
2014/01/16 职场文书
同事打架检讨书
2014/02/04 职场文书
师范生自我鉴定
2014/03/20 职场文书
《孔繁森》教学反思
2014/04/17 职场文书
2014年母亲节演讲稿范文
2014/05/07 职场文书
《曹冲称象》教学反思
2016/02/20 职场文书
Python绘制分类图的方法
2021/04/20 Python
JUnit5常用注解的使用
2021/07/02 Java/Android