JavaScript中URL编码函数代码


Posted in Javascript onJanuary 11, 2011

以下是对变量值的URL编码总结 : 建议用encodeURIComponent() , GET 和POST方式都可以发送过去 。

JavaScript中存在几种对URL字符串进行编码的方法:escape(),encodeURI(),以及encodeURIComponent()。这几种编码所起的作用各不相同。

escape() 方法:
采用ISO Latin字符集对指定的字符串进行编码。所有的空格符、标点符号、特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集表里面的编码的16进制数字)。比如,空格符对应的编码是%20。
不会被此方法编码的字符: @ * / +

encodeURI() 方法:
把URI字符串采用UTF-8编码格式转化成escape格式的字符串。
不会被此方法编码的字符:! @ # $& * ( ) = : / ; ? + '

encodeURIComponent() 方法:
把URI字符串采用UTF-8编码格式转化成escape格式的字符串。与encodeURI()相比,这个方法将对更多的字符进行编码,比如 / 等字符。所以如果字符串里面包含了URI的几个部分的话,不能用这个方法来进行编码,否则 / 字符被编码之后URL将显示错误。
不会被此方法编码的字符:! * ( ) '
因此,对于中文字符串来说,如果不希望把字符串编码格式转化成UTF-8格式的(比如原页面和目标页面的charset是一致的时候),只需要使用 escape。如果你的页面是GB2312或者其他的编码,而接受参数的页面是UTF-8编码的,就要采用encodeURI或者 encodeURIComponent。

Javascript 相关文章推荐
jquery foreach使用示例
Sep 12 Javascript
setTimeout()递归调用不加引号出错的解决方法
Sep 05 Javascript
JavaScript中的值类型转换介绍
Dec 31 Javascript
使用npm发布Node.JS程序包教程
Mar 02 Javascript
swtich/if...else的替代语句
Aug 16 Javascript
JS中的进制转换以及作用
Jun 26 Javascript
如何用JS判断两个数字的大小
Jul 21 Javascript
详解JavaScript跨域总结与解决办法
Oct 31 Javascript
JS基于面向对象实现的多个倒计时器功能示例
Feb 28 Javascript
Angular中的interceptors拦截器
Jun 25 Javascript
在Vue中使用highCharts绘制3d饼图的方法
Feb 08 Javascript
Node.js静态服务器的实现方法
Feb 28 Javascript
Jquery跨域获得Json时invalid label错误的解决办法
Jan 11 #Javascript
JS无限树状列表实现代码
Jan 11 #Javascript
jQuery UI的Dialog无法提交问题的解决方法
Jan 11 #Javascript
JQuery 1.3.2以上版本中出现pareseerror错误的解决方法
Jan 11 #Javascript
Jquery中获取iframe的代码
Jan 11 #Javascript
基于jQuery的message插件实现右下角弹出消息框
Jan 11 #Javascript
基于jquery的cookie的用法
Jan 10 #Javascript
You might like
php图片验证码代码
2008/03/27 PHP
php不用内置函数对数组排序的两个算法代码
2010/02/08 PHP
php从文件夹随机读取文件的方法
2015/06/01 PHP
magento后台无法登录解决办法的两种方法
2016/12/09 PHP
thinkphp3.2中实现phpexcel导出带生成图片示例
2017/02/14 PHP
php实现的XML操作(读取)封装类完整实例
2017/02/23 PHP
在PHP 7下安装Swoole与Yar,Yaf的方法教程
2017/06/02 PHP
laravel实现Auth认证,登录、注册后的页面回跳方法
2019/09/30 PHP
nicejforms——美化表单不用愁
2007/02/20 Javascript
编写Js代码要注意的几条规则
2010/09/10 Javascript
关于onScroll事件在IE6下每次滚动触发三次bug说明
2011/09/21 Javascript
一个简单的jquery进度条示例
2014/04/28 Javascript
设计模式中的组合模式在JavaScript程序构建中的使用
2016/05/18 Javascript
AngularJS实现一次监听多个值发生的变化
2016/08/31 Javascript
JavaScript中const、var和let区别浅析
2016/10/11 Javascript
简单谈谈Javascript函数中的arguments
2017/02/09 Javascript
js构建二叉树进行数值数组的去重与优化详解
2018/03/26 Javascript
使用Node搭建reactSSR服务端渲染架构
2018/08/30 Javascript
vue axios数据请求及vue中使用axios的方法
2018/09/10 Javascript
element-ui带输入建议的input框踩坑(输入建议空白以及会闪出上一次的输入建议问题)
2019/01/15 Javascript
vue实现路由切换改变title功能
2019/05/28 Javascript
Vue实现Header渐隐渐现效果的实例代码
2020/11/05 Javascript
[02:53]2018年度DOTA2最佳战队-完美盛典
2018/12/17 DOTA
安装dbus-python的简要教程
2015/05/05 Python
Window环境下Scrapy开发环境搭建
2018/11/18 Python
移动端html5模拟长按事件的实现方法
2018/09/30 HTML / CSS
英国最大线上综合鞋类商城:Office
2017/12/08 全球购物
Book Depository澳大利亚:世界领先的专业在线书店之一
2018/12/27 全球购物
社团活动总结模板
2014/06/30 职场文书
2014年城管个人工作总结
2014/12/08 职场文书
2015年党员自我剖析材料
2014/12/17 职场文书
第一节英语课开场白
2015/06/01 职场文书
房屋所有权证明
2015/06/19 职场文书
教师学习心得体会范文
2016/01/21 职场文书
68句权威创业名言
2019/08/26 职场文书
Python中的pprint模块
2021/11/27 Python