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与C#编码解码
Dec 03 Javascript
JS实现关键字搜索时的相关下拉字段效果
Aug 05 Javascript
Python脚本后台运行的几种方式
Mar 09 Javascript
jquery插件jquery.confirm弹出确认消息
Dec 22 Javascript
php基于redis处理session的方法
Mar 14 Javascript
将List对象列表转换成JSON格式的类实现方法
Jul 04 Javascript
微信小程序 MD5的方法详解及实例代码
Mar 10 Javascript
基于Vue 2.0的模块化前端 UI 组件库小结
Dec 21 Javascript
JavaScript封装的常用工具类库bee.js用法详解【经典类库】
Sep 03 Javascript
Next.js项目实战踩坑指南(笔记)
Nov 29 Javascript
jsonp跨域获取百度联想词的方法分析
May 13 Javascript
vue使用高德地图点击下钻上浮效果的实现思路
Oct 12 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
利用php_imagick实现复古效果的方法
2016/10/18 PHP
PHP + plupload.js实现多图上传并显示进度条加删除实例代码
2017/03/06 PHP
php面试中关于面向对象的相关问题
2019/02/13 PHP
php获取是星期几的的一些常用姿势
2019/12/15 PHP
javascript onkeydown,onkeyup,onkeypress,onclick,ondblclick
2009/02/04 Javascript
8个超棒的学习 jQuery 的网站 推荐收藏
2011/04/02 Javascript
Javascript 加载和执行-性能提高篇
2012/12/28 Javascript
基于JavaScript 声明全局变量的三种方式详解
2013/05/07 Javascript
jquery 删除字符串最后一个字符的方法解析
2014/02/11 Javascript
JavaScript跨域方法汇总
2014/10/16 Javascript
在JavaScript中处理字符串之link()方法的使用
2015/06/08 Javascript
实例详解jQuery Mockjax 插件模拟 Ajax 请求
2016/01/12 Javascript
什么是Vue.js框架 为什么选择它?
2017/10/17 Javascript
为输入框加入数字js校验代码分享
2017/11/02 Javascript
除Console.log()外更多的Javascript调试命令
2018/01/24 Javascript
解析Vue.js中的组件
2018/02/02 Javascript
Vue打包后出现一些map文件的解决方法
2018/02/13 Javascript
Vue.js 实现微信公众号菜单编辑器功能(二)
2018/05/08 Javascript
vue树形结构获取键值的方法示例
2018/06/21 Javascript
JS实现的简单tab切换功能完整示例
2019/06/20 Javascript
Centos7 安装Node.js10以上版本的方法步骤
2019/10/15 Javascript
Python 网络编程起步(Socket发送消息)
2008/09/06 Python
在Python程序中操作MySQL的基本方法
2015/07/29 Python
Python使用ntplib库同步校准当地时间的方法
2016/07/02 Python
浅谈python日志的配置文件路径问题
2018/04/28 Python
Python中的异常处理try/except/finally/raise用法分析
2019/02/28 Python
python自动化unittest yaml使用过程解析
2020/02/03 Python
浅谈Django QuerySet对象(模型.objects)的常用方法
2020/03/28 Python
HTML5如何实现元素拖拽
2016/03/11 HTML / CSS
美国知名保健品网站:LuckyVitamin(支持中文)
2017/08/09 全球购物
信息技术专业个人自我评价
2013/12/11 职场文书
电子商务专业毕业生求职信
2014/06/12 职场文书
司机岗位职责说明书
2014/07/29 职场文书
三八妇女节超市活动方案
2014/08/18 职场文书
红白喜事主持词
2015/07/06 职场文书
退休教师欢送会致辞
2015/07/31 职场文书