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 相关文章推荐
javascript YUI 读码日记之 YAHOO.util.Dom - Part.4
Mar 22 Javascript
javascript闭包传参和事件的循环绑定示例探讨
Apr 17 Javascript
JS小游戏之象棋暗棋源码详解
Sep 25 Javascript
javascript数组遍历for与for in区别详解
Dec 04 Javascript
jQuery功能函数详解
Feb 01 Javascript
基于JavaScript实现树形下拉框
Aug 10 Javascript
angular实现图片懒加载实例代码
Jun 08 Javascript
详解如何用webpack打包一个网站应用项目
Jul 12 Javascript
详解基于vue-router的动态权限控制实现方案
Sep 28 Javascript
微信小程序实现带放大效果的轮播图
May 26 Javascript
解决Nuxt使用axios跨域问题
Jul 06 Javascript
uin-app+mockjs实现本地数据模拟
Aug 26 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新手上路(四)
2006/10/09 PHP
php var_export与var_dump 输出的不同
2013/08/09 PHP
php无限级分类实现方法分析
2016/10/19 PHP
AJAX架构之Dojo篇
2007/04/10 Javascript
jQuery ui1.7 dialog只能弹出一次问题
2009/08/27 Javascript
浅谈javascript 面向对象编程
2009/10/28 Javascript
JavaScript获取onclick、onchange等事件值的代码
2013/07/22 Javascript
javascript继承机制实例详解
2014/11/20 Javascript
15款jQuery分布引导插件分享
2015/02/04 Javascript
javascript中setTimeout使用指南
2015/07/26 Javascript
学习javascript面向对象 javascript实现继承的方式
2016/01/04 Javascript
深入浅出ES6新特性之函数默认参数和箭头函数
2016/08/01 Javascript
Javascript数组中push方法用法分析
2016/10/31 Javascript
vue+echarts实现可拖动节点的折线图(支持拖动方向和上下限的设置)
2019/04/12 Javascript
vue实现公共方法抽离
2020/07/31 Javascript
python实现simhash算法实例
2014/04/25 Python
Python中encode()方法的使用简介
2015/05/18 Python
Python实现数据库并行读取和写入实例
2017/06/09 Python
python+selenium识别验证码并登录的示例代码
2017/12/21 Python
python中的tcp示例详解
2018/12/09 Python
10招!看骨灰级Pythoner玩转Python的方法
2019/04/15 Python
深入浅析python 协程与go协程的区别
2019/05/09 Python
pymysql 开启调试模式的实现
2019/09/24 Python
Python3和pyqt5实现控件数据动态显示方式
2019/12/13 Python
HTML5 progress和meter控件_动力节点Java学院整理
2017/07/06 HTML / CSS
使用layui实现左侧菜单栏及动态操作tab项的方法
2020/11/10 HTML / CSS
智能电子应届生求职信
2013/11/10 职场文书
大宝sod蜜广告词
2014/03/21 职场文书
社区居务公开实施方案
2014/03/27 职场文书
大学自主招生推荐信
2014/05/10 职场文书
心得体会的写法
2014/09/05 职场文书
2014乡镇干部对照检查材料思想汇报
2014/09/26 职场文书
你有一份《诚信考试承诺书》待领取
2019/11/13 职场文书
Django如何与Ajax交互
2021/04/29 Python
vue实现Toast组件轻提示
2022/04/10 Vue.js
使用CSS定位HTML元素的实现方法
2022/07/07 HTML / CSS