您好,欢迎访问一九零五行业门户网

Javascript UrlDecode函数代码_javascript技巧

有时候可能会有这么一个需求,我在后台使用:
复制代码 代码如下:
httputility.urlencode(str, system.text.encoding.utf8);
将url进行编码,前台js需要使用这段内容,这时候就需要解码了:
代码
复制代码 代码如下:
/**
* url编码
**/
shengutils.encode = function(unzipstr){
var zipstr=;
var strspecial=!\#$%&'()*+,/:;?[]^`{|}~%;
var tt= ;
for(var i=0;ivar chr = unzipstr.charat(i);
var c=shengutils.stringtoascii(chr);
tt += chr+:+c+n;
if(parseint(0x+c) > 0x7f){
zipstr+=encodeuri(unzipstr.substr(i,1));
}else{
if(chr== )
zipstr+=+;
else if(strspecial.indexof(chr)!=-1)
zipstr+=%+c.tostring(16);
else
zipstr+=chr;
}
}
return zipstr;
}
/**
* url解码
**/
shengutils.decode=function(zipstr){
var uzipstr=;
for(var i=0;ivar chr = zipstr.charat(i);
if(chr == +){
uzipstr+= ;
}else if(chr==%){
var asc = zipstr.substring(i+1,i+3);
if(parseint(0x+asc)>0x7f){
uzipstr+=decodeuri(%+asc.tostring()+zipstr.substring(i+3,i+9).tostring()); ;
i+=8;
}else{
uzipstr+=shengutils.asciitostring(parseint(0x+asc));
i+=2;
}
}else{
uzipstr+= chr;
}
}
return uzipstr;
}
shengutils.stringtoascii=function(str){
return str.charcodeat(0).tostring(16);
}
shengutils.asciitostring = function(asccode){
return string.fromcharcode(asccode);
}
其它类似信息

推荐信息