JavaScript 实现URLEncode、URLDecode (GB2312版)

majian by:majian 分类:JavaScript 时间:2020/06/27 阅读:1374 评论:0

 诸如百度之类的搜索引擎使用的是GB2312,而Goole采用的是UTF-8
UrlEncode("中") //得到结果%D6%D0
UrlDecode("%D6%D0")  //得到结果“中”

<script language=vbscript> 
Function str2asc(strstr) 
 str2asc = hex(asc(strstr)) 
End Function 
Function asc2str(ascasc) 
 asc2str = chr(ascasc) 
End Function 
</script>
<script type=text/javascript>
/*这里开始时UrlEncode和UrlDecode函数*/ 
function UrlEncode(str){ 
   var ret=""; 
   var strSpecial="!/"#$%&'()*+,/:;<=>?[]^`{|}~%"; 
   for(var i=0;i 0x7f){ 
       ret+="%"+c.slice(0,2)+"%"+c.slice(-2); 
     }else{ 
       if(chr==" ") 
         ret+="+"; 
       else if(strSpecial.indexOf(chr)!=-1) 
         ret+="%"+c.toString(16); 
       else 
         ret+=chr; 
     } 
   } 
   return ret; 
} 
function UrlDecode(str){ 
   var ret=""; 
   for(var i=0;i0x7f){ 
       ret+=asc2str(parseInt("0x"+asc+str.substring(i+4,i+6))); 
       i+=5; 
     }else{ 
       ret+=asc2str(parseInt("0x"+asc)); 
       i+=2; 
     } 
     }else{ 
       ret+= chr; 
     } 
   } 
   return ret; 
} 
</script>

摘自:https://blog.csdn.net/jyh_jack/article/details/2677533

非特殊说明,本文版权归原作者所有,转载请注明出处

本文地址:http://www.majian.com.cn/?id=9


TOP