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 相关文章推荐
服务端 VBScript 与 JScript 几个相同特性的写法 By shawl.qiu
Mar 06 Javascript
jquery-easyui关闭tab自动切换到前一个tab
Jul 29 Javascript
JavaScript自定义日期格式化函数详细解析
Jan 14 Javascript
浅谈JavaScript事件的属性列表
Mar 01 Javascript
C#中使用迭代器处理等待任务
Jul 13 Javascript
BootStrap3中模态对话框的使用
Jan 06 Javascript
Js实现京东无延迟菜单效果实例(demo)
Jun 02 Javascript
Angular4学习笔记之根模块与Ng模块
Sep 09 Javascript
vue修改对象的属性值后页面不重新渲染的实例
Aug 09 Javascript
ElementUI多个子组件表单的校验管理实现
Nov 07 Javascript
使用node.JS中的url模块解析URL信息
Feb 06 Javascript
Node.js API详解之 zlib模块用法分析
May 19 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中json_encode中文编码问题分析
2011/09/13 PHP
PHP 如何获取二维数组中某个key的集合
2014/06/03 PHP
PHP编程中的常见漏洞和代码实例
2014/08/06 PHP
Laravel学习教程之路由模块
2017/08/18 PHP
PHP生成短网址的思路以及实现方法的详解
2019/03/25 PHP
js实现简单鼠标跟随效果的方法
2015/04/10 Javascript
JavaScript匿名函数之模仿块级作用域
2015/12/12 Javascript
省市联动效果的简单实现代码(推荐)
2016/06/06 Javascript
AngularJS 最常用的八种功能(基础知识)
2017/06/26 Javascript
JavaScript如何获取一个元素的样式信息
2019/07/29 Javascript
基于vue实现图片验证码倒计时60s功能
2019/12/10 Javascript
react-native 实现购物车滑动删除效果的示例代码
2021/01/15 Javascript
Python中用函数作为返回值和实现闭包的教程
2015/04/27 Python
python插入数据到列表的方法
2015/04/30 Python
Python文件及目录操作实例详解
2015/06/04 Python
深入理解Python中的内置常量
2017/05/20 Python
Python解析json之ValueError: Expecting property name enclosed in double quotes: line 1 column 2(char 1)
2017/07/06 Python
python实现将多个文件分配到多个文件夹的方法
2019/01/07 Python
python sort、sort_index方法代码实例
2019/03/28 Python
Python+Tensorflow+CNN实现车牌识别的示例代码
2019/10/11 Python
sklearn+python:线性回归案例
2020/02/24 Python
Python列表解析操作实例总结
2020/02/26 Python
python跨文件使用全局变量的实现
2020/11/17 Python
Jmeter调用Python脚本实现参数互相传递的实现
2021/01/22 Python
Python操作Excel的学习笔记
2021/02/18 Python
用友笔试题目
2016/10/25 面试题
CSMA/CD介质访问控制协议
2015/11/17 面试题
学前教育教师求职自荐信
2013/09/22 职场文书
女大学生自我鉴定
2013/12/09 职场文书
计算机相关的自我评价
2014/01/15 职场文书
机电职业生涯规划书范文
2014/03/08 职场文书
促销活动总结模板
2014/07/01 职场文书
九寨沟导游词
2015/02/02 职场文书
酒店员工辞职信范文
2015/02/28 职场文书
2015年人力资源部工作总结
2015/04/30 职场文书
python tqdm用法及实例详解
2021/06/16 Python