JavaScript中的编码和解码函数


Posted in Javascript onFebruary 15, 2017

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

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

例如:

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

例如:Location.href=encodeURI("http://cang.baidu.com/do/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

针对escape,encodeURI和encodeURIComponent的区别见此处javascript 字符 Escape,encodeURI,encodeURIComponent

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
刷新时清空文本框内容的js代码
Apr 23 Javascript
刷新页面实现方式总结(HTML,ASP,JS)
Nov 13 Javascript
Jquery中val()表单取值赋值的实例代码
Aug 15 Javascript
js函数名与form表单元素同名冲突的问题
Mar 07 Javascript
Javascript MVC框架Backbone.js详解
Sep 18 Javascript
jQuery使用slideUp方法实现控制元素缓慢收起
Mar 27 Javascript
AngularJs $parse、$eval和$observe、$watch详解
Sep 21 Javascript
angular实现商品筛选功能
Feb 01 Javascript
浅谈Node Inspector 代理实现
Oct 19 Javascript
vue脚手架中配置Sass的方法
Jan 04 Javascript
Vue多系统切换实现方案
Jun 05 Javascript
JS数组的常用10种方法详解
May 08 Javascript
js date 格式化
Feb 15 #Javascript
JS实现最简单的冒泡排序算法
Feb 15 #Javascript
javascript设计模式之单体模式学习笔记
Feb 15 #Javascript
JavaScript中的toString()和toLocaleString()方法的区别
Feb 15 #Javascript
javascript设计模式之模块模式学习笔记
Feb 15 #Javascript
javascript设计模式之策略模式学习笔记
Feb 15 #Javascript
BootStrap实现带关闭按钮功能
Feb 15 #Javascript
You might like
在普通HTTP上安全地传输密码
2007/07/21 PHP
php修改指定文件后缀的方法
2014/09/11 PHP
PHP文件上传判断file是否己选择上传文件的方法
2014/11/10 PHP
浅谈PHP中JSON数据操作
2015/07/01 PHP
WordPress中使主题支持小工具以及添加插件启用函数
2015/12/22 PHP
PHP获取真实客户端的真实IP
2017/03/07 PHP
javascript 面向对象封装与继承
2014/11/27 Javascript
JQuery实现动态添加删除评论的方法
2015/05/18 Javascript
javascript自定义右键弹出菜单实现方法
2015/05/25 Javascript
jQuery实现延迟跳转的方法
2015/06/05 Javascript
jQuery防止重复绑定事件的解决方法
2016/05/14 Javascript
总结JavaScript的正则与其他语言的不同之处
2016/08/25 Javascript
用Nodejs搭建服务器访问html、css、JS等静态资源文件
2017/04/28 NodeJs
基于vue-resource jsonp跨域问题的解决方法
2018/02/03 Javascript
浅谈vue.js导入css库(elementUi)的方法
2018/03/09 Javascript
VUE项目初建和常见问题总结
2019/09/12 Javascript
vue 清空input标签 中file的值操作
2020/07/21 Javascript
基于Python实现文件大小输出
2016/01/11 Python
python之django母板页面的使用
2018/07/03 Python
wxPython绘图模块wxPyPlot实现数据可视化
2019/11/19 Python
Python基于百度AI实现OCR文字识别
2020/04/02 Python
解决numpy矩阵相减出现的负值自动转正值的问题
2020/06/03 Python
python中scipy.stats产生随机数实例讲解
2021/02/19 Python
Agoda西班牙:全球特价酒店预订
2017/06/03 全球购物
Saucony澳大利亚官网:美国跑鞋品牌,运动鞋中的劳斯莱斯
2018/05/05 全球购物
英国打印机墨盒销售网站:Ink Factory
2019/10/07 全球购物
俄罗斯园林植物网上商店:Garshinka
2020/07/16 全球购物
联想C++笔试题
2012/06/13 面试题
介绍一下ICMP(Internet Control Message Protocol)Internet控制信息协议
2016/11/26 面试题
如何防止同一个帐户被多人同时登录
2013/08/01 面试题
如何唤起类中的一个方法
2013/11/29 面试题
优秀应届毕业生自荐书
2014/06/29 职场文书
医生学习党的群众路线教育实践活动心得体会
2014/11/03 职场文书
高中生思想道德自我评价
2015/03/09 职场文书
趣味运动会广播稿
2015/08/19 职场文书
总结Python常用的魔法方法
2021/05/25 Python