javascript 三种编解码方式


Posted in Javascript onFebruary 01, 2010

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

例如:<script language="javascript">document.write('<a href="http://passport.baidu.com/?logout&aid=7&u='+encodeURIComponent("http://cang.baidu.com/bruce42")+'">退出</a>');</script>

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

例如:Location.href=encodeURI("http://cang.baidu.com/do/s?word=百度&ct=21");

3、 js使用数据时可以使用escape[Huoho.Com编辑]

例如:搜藏中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

========================================================

unescape 方法

从用 escape 方法编码的 String 对象中返回已解码的字符串。

function unescape(charString : String) : String

参数

charString

必选。要解码的 String 对象或文本。

备注

unescape 方法返回一个包含 charstring 内容的字符串值。所有以 %xx 十六进制形式编码的字符都用 ASCII 字符集当中等效的字符代替。以 %uxxxx 格式(Unicode 字符)编码的字符用十六进制编码 xxxx 的 Unicode 字符代替。注意 unescape 方法不应用于解码“统一资源标识符”(URI)。请改用 decodeURI 和 decodeURIComponent 方法。

decodeURI 方法

返回一个已编码的统一资源标识符 (URI) 的非编码形式。

function decodeURI(URIstring : String) : String

参数

URIstring

必选。表示编码 URI 的字符串。

备注

使用 decodeURI 方法代替已经过时的 unescape 方法。

decodeURI 方法返回一个字符串值。

如果 URIString 无效,将发生 URIError。

decodeURIComponent 方法

返回统一资源标识符 (URI) 的一个已编码组件的非编码形式。

function decodeURIComponent(encodedURIString : String) : String

必选的 encodedURIString 参数是一个表示已编码的 URI 组件的值。

备注

URIComponent 是一个完整的 URI 的一部分

Javascript 相关文章推荐
jQuery 中使用JSON的实现代码
Dec 01 Javascript
js工具方法弹出蒙版
May 08 Javascript
浅析jQuery中常用的元素查找方法总结
Jul 04 Javascript
解决Jquery向页面append新元素之后事件的绑定问题
Mar 16 Javascript
javascript中scrollTop详解
Apr 13 Javascript
jquery实现兼容IE8的异步上传文件
Jun 15 Javascript
Js制作点击输入框时默认文字消失的效果
Sep 05 Javascript
ES6深入理解之“let”能替代”var“吗?
Jun 28 Javascript
layui表格 返回的数据状态异常的解决方法
Sep 10 Javascript
Vue快速实现通用表单验证的示例代码
Jan 09 Javascript
JS表单验证插件之数据与逻辑分离操作实例分析【策略模式】
May 01 Javascript
QT与javascript交互数据的实现
May 26 Javascript
对字符串进行HTML编码和解码的JavaScript函数
Feb 01 #Javascript
javaScript 关闭浏览器 (不弹出提示框)
Jan 31 #Javascript
javascript让setInteval里的函数参数中的this指向特定的对象
Jan 31 #Javascript
详细讲解JS节点知识
Jan 31 #Javascript
javascript中的array数组使用技巧
Jan 31 #Javascript
jquery 批量上传图片实现代码
Jan 28 #Javascript
Jquery 常用方法经典总结
Jan 28 #Javascript
You might like
php中通过curl smtp发送邮件
2012/06/05 PHP
解析phpstorm + xdebug 远程断点调试
2013/06/20 PHP
jQuery DOM操作小结与实例
2010/01/07 Javascript
jQuery $.data()方法使用注意细节
2012/12/31 Javascript
BootStrap glyphicon图标无法显示的解决方法
2016/09/06 Javascript
Node.js中路径处理模块path详解
2016/11/14 Javascript
JS中substring与substr的用法
2016/11/16 Javascript
React Native 环境搭建的教程
2017/08/19 Javascript
详解angularJS+Ionic移动端图片上传的解决办法
2017/09/13 Javascript
Mint-UI时间组件起始时间问题及时间插件使用
2018/08/20 Javascript
解决Angular2 router.navigate刷新页面的问题
2018/08/31 Javascript
微信小程序自定义导航栏
2018/12/31 Javascript
Vue 进阶之路(三)
2019/04/18 Javascript
浅谈vue限制文本框输入数字的正确姿势
2019/09/02 Javascript
python基于windows平台锁定键盘输入的方法
2015/03/05 Python
python中list列表的高级函数
2016/05/17 Python
ubuntu中配置pyqt4环境教程
2017/12/27 Python
Python安装lz4-0.10.1遇到的坑
2018/05/20 Python
python3解析库lxml的安装与基本使用
2018/06/27 Python
Django异步任务之Celery的基本使用
2019/03/23 Python
Python装饰器原理与基本用法分析
2020/01/07 Python
html5时钟实现代码
2010/10/22 HTML / CSS
美国高端寝具品牌:Coyuchi
2017/02/08 全球购物
加拿大建筑和装修专家:Reno-Depot
2017/12/21 全球购物
如何将整数int转换成字串String
2014/03/21 面试题
财务会计专业毕业生自荐信
2013/10/02 职场文书
英语专业学子个人的自我评价
2013/10/02 职场文书
配件采购员岗位职责
2013/12/03 职场文书
安全检查与奖惩制度
2014/01/23 职场文书
关于环保的建议书
2014/05/12 职场文书
小学教师自我评价
2015/03/04 职场文书
出国导师推荐信
2015/03/25 职场文书
高一军训感想
2015/08/07 职场文书
《花钟》教学反思
2016/02/17 职场文书
导游词之清晏园
2019/11/22 职场文书
Python可视化神器pyecharts绘制水球图
2022/07/07 Python