易截截图软件、单文件、免安装、纯绿色、仅160KB

JavaScript中的 escape,encodeURI,encodeURIComponent


js对文字进行编码涉及3个函数:escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent
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


相关文档:

javascript 跨浏览器的事件系统4

上次说到我们在无菌环境中设计了一个事件代理函数,但性能是个问题,解决它我们需要缓存节点集合,发现节点集合不足以应对新情况时,再替换这个节点集合,重新开始匹配。下面是新的方案:

var delegate = function(selector,type,callback){
var els = $(selector);
addEvent(document,t ......

[转]JavaScript中的trim函数

/**
* 去除多余空格函数
* trim:去除两边空格 lTrim:去除左空格 rTrim: 去除右空格
* 用法:
*     var str = "  hello ";
*     str = str.trim();
*/
String.prototype.trim = function()
{
    return this.replace(/(^[\\s]*)|([\\s]*$)/g, ""); ......

Javascript操作Select和Option

注意:Option中的O是要大写的,不然语法报错
1.动态创建select
      function createSelect(){
        var mySelect = document.createElement("select");
          mySelect.id = "mySelect";  ......

[javascript]替换所有带/的字符串

技术的js的replace默认只替换第一个,这不知道哪个设计的,如果我是 A / B / C / D 的字符串要变成 A-B-C-D 就要在被转内容使用后加/g,因为又带了/,加上各空格,在replace 的第一个参数应该是
var rut = /\/ /g;
然后
replace(rut, "-"); ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号