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 DOM操作 基于命令改变页面
May 06 Javascript
onmouseover和onmouseout的一些问题思考
Aug 14 Javascript
js unicode 编码解析关于数据转换为中文的两种方法
Apr 21 Javascript
基于豆瓣API+Angular开发的web App
Jan 02 Javascript
layui获取多选框中的值方法
Aug 15 Javascript
react的滑动图片验证码组件的示例代码
Feb 27 Javascript
ionic4+angular7+cordova上传图片功能的实例代码
Jun 19 Javascript
vue+axios实现post文件下载
Sep 25 Javascript
JS实现打字游戏
Dec 17 Javascript
通过js实现压缩图片上传功能
Feb 25 Javascript
JavaScript日期库date-fn.js使用方法解析
Sep 09 Javascript
typescript编写微信小程序创建项目的方法
Jan 29 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(4) php 函数 补充2
2010/02/15 PHP
php获取文件名后缀常用方法小结
2015/02/24 PHP
基于php实现的验证码小程序
2016/12/13 PHP
laravel 框架配置404等异常页面
2019/01/07 PHP
javascript 基础篇2 数据类型,语句,函数
2012/03/14 Javascript
jquery删除提示框弹出是否删除对话框
2014/01/07 Javascript
JavaScript中的函数(二)
2015/12/23 Javascript
用自定义图片代替原生checkbox实现全选,删除以及提交的方法
2016/10/18 Javascript
JavaScript中访问id对象 属性的方式访问属性(实例代码)
2016/10/28 Javascript
jQuery基于正则表达式的表单验证功能示例
2017/01/21 Javascript
jQuery中each循环的跳出和结束实例
2017/08/16 jQuery
JavaScript switch语句使用方法简介
2019/12/30 Javascript
微信小程序静默登录的实现代码
2020/01/08 Javascript
通过js实现压缩图片上传功能
2020/02/25 Javascript
JavaScript实现点击出现子菜单效果
2021/02/08 Javascript
python fabric实现远程操作和部署示例
2014/03/25 Python
python实现随机密码字典生成器示例
2014/04/09 Python
python使用KNN算法识别手写数字
2019/04/25 Python
浅谈对pytroch中torch.autograd.backward的思考
2019/12/27 Python
ansible-playbook实现自动部署KVM及安装python3的详细教程
2020/05/11 Python
Opencv图像处理:如何判断图片里某个颜色值占的比例
2020/06/03 Python
CSS3 :not()选择器实现最后一行li去除某种css样式
2016/10/19 HTML / CSS
基于HTML5的齿轮动画特效
2016/02/29 HTML / CSS
Spanx塑身衣官网:美国知名内衣品牌
2017/01/11 全球购物
Geekbuying波兰:购买中国电子产品
2019/10/20 全球购物
火山动力Java笔试题
2014/06/26 面试题
生产部统计员岗位职责
2014/01/05 职场文书
大学校庆邀请函
2014/01/11 职场文书
教师档案管理制度
2014/01/23 职场文书
安全承诺书范文
2014/03/26 职场文书
师德师风的心得体会
2014/09/02 职场文书
大学生国庆节65周年演讲稿范文
2014/09/25 职场文书
大学生第一学年自我鉴定2015
2014/09/28 职场文书
辛德勒的名单观后感
2015/06/03 职场文书
php实例化对象的实例方法
2021/11/17 PHP
Java实现添加条码或二维码到Word文档
2022/06/01 Java/Android