JS对字符串编码的几种方式使用指南


Posted in Javascript onMay 14, 2015

函数 描述
encodeURI() 把字符串编码为 URI
encodeURIComponent() 把字符串编码为 URI 组件
escape() 对字符串进行编码

上面是查询来自w3school的资料。那么三者之间有什么区别呢,请容我测试测试。

var str = "http://localhost:8080/Product/index?id=123&attr=456&area=中国";

console.log(encodeURI(str));

console.log(encodeURIComponent(str));

console.log(escape(str));

打印结果如下:

http://localhost:8080/Product/index?id=123&attr=456&area=%E4%B8%AD%E5%9B%BD

http%3A%2F%2Flocalhost%3A8080%2FProduct%2Findex%3Fid%3D123%26attr%3D456%26area%3D%E4%B8%AD%E5%9B%BD 

http%3A//localhost%3A8080/Product/index%3Fid%3D123%26attr%3D456%26area%3D%u4E2D%u56FD

可以看出,

encodeURI不会对:/?&等uri中起分割作用的字符进行编码;

encodeURIComponent则会。

观察escape则发现,:?&都被转码了,而/没有,w3school解释是,escape函数会对ascii码中字母、数字及符号( * @ - _ + . / )之外的所有字符进行编码。

另外,我们可以看出escape对汉字“中国”编码后结果与前两者不同。W3SCHOOL也建议不使用该方法,用前两者代替。

以上所述就是本文的全部内容了,希望对大家学习javascript能够有所帮助。

Javascript 相关文章推荐
xml 封装与解析(javascript和C#中)
Jul 26 Javascript
网页图片延时加载的js代码
Apr 22 Javascript
用JQuery实现全选与取消的两种简单方法
Feb 22 Javascript
js 触发select onchange事件代码
Mar 20 Javascript
EasyUI中datagrid在ie下reload失败解决方案
Mar 09 Javascript
再谈JavaScript线程
Jul 10 Javascript
JavaScript实现对下拉列表值进行排序的方法
Jul 15 Javascript
详解vuelidate 对于vueJs2.0的验证解决方案
Mar 09 Javascript
JS库之Particles.js中文开发手册及参数详解
Sep 13 Javascript
vue-quill-editor富文本编辑器简单使用方法
Sep 21 Javascript
Angular(5.2->6.1)升级小结
Dec 27 Javascript
详解Vue中组件的缓存
Apr 20 Javascript
jQuery的基本概念与高级编程
May 14 #Javascript
javascript实现简单的省市区三级联动
May 14 #Javascript
javascript实现仿腾讯游戏选择
May 14 #Javascript
JavaScript实现Flash炫光波动特效
May 14 #Javascript
javascript基于DOM实现省市级联下拉框的方法
May 14 #Javascript
javascript搜索框效果实现方法
May 14 #Javascript
javascript操作ul中li的方法
May 14 #Javascript
You might like
简单易用的计数器(数据库)
2006/10/09 PHP
PHP新手上路(二)
2006/10/09 PHP
PHP精确到毫秒秒杀倒计时实例详解
2019/03/14 PHP
laravel返回统一格式错误码问题
2019/11/04 PHP
jquery与google map api结合使用 控件,监听器
2010/03/04 Javascript
jQuery源码分析-05异步队列 Deferred 使用介绍
2011/11/14 Javascript
JavaScript判断DOM何时加载完毕的技巧
2012/11/11 Javascript
JS打开层/关闭层/移动层动画效果的实例代码
2013/05/11 Javascript
jquery中通过父级查找进行定位示例
2013/06/28 Javascript
jquery ajax实现下拉框三级无刷新联动,且保存保持选中值状态
2013/10/29 Javascript
javascript验证身份证完全方法具体实现
2013/11/18 Javascript
提升PHP安全:8个必须修改的PHP默认配置
2014/11/17 Javascript
jQuery的css() 方法使用指南
2015/05/03 Javascript
JavaScript面试题(指针、帽子和女朋友)
2016/11/23 Javascript
百度地图API之百度地图退拽标记点获取经纬度的实现代码
2017/01/12 Javascript
vue-resource 拦截器(interceptor)的使用详解
2017/07/04 Javascript
浅谈node模块与npm包管理工具
2018/01/03 Javascript
基于bootstrap页面渲染的问题解决方法
2018/08/09 Javascript
详解Vue改变数组中对象的属性不重新渲染View的解决方案
2018/09/21 Javascript
[02:09]2018DOTA2亚洲邀请赛TNC赛前采访
2018/04/04 DOTA
Python字符串和文件操作常用函数分析
2015/04/08 Python
Python导出DBF文件到Excel的方法
2015/07/25 Python
Python随机数random模块使用指南
2016/09/09 Python
django数据模型中null和blank的区别说明
2020/09/02 Python
利用CSS3实现平移动画效果示例代码
2016/10/12 HTML / CSS
HTML5到底会有什么发展?HTML5的前景展望
2015/07/07 HTML / CSS
Ray-Ban雷朋美国官网:全球领先的太阳眼镜品牌
2016/07/20 全球购物
印度化妆品购物网站:Nykaa
2018/07/22 全球购物
英国羊绒服装购物网站:Pure Collection
2018/10/22 全球购物
中学劳技课教师的自我评价
2014/02/05 职场文书
经典安踏广告词
2014/03/21 职场文书
2014年干部培训工作总结
2014/12/17 职场文书
平安家庭事迹材料
2014/12/20 职场文书
自荐信大全
2019/03/21 职场文书
python爬取企查查企业信息之selenium自动模拟登录企查查
2021/04/08 Python
Python Django 后台管理之后台模型属性详解
2021/04/25 Python