学堂 学堂 学堂公众号手机端

JS解析urlencode编码怎样做,有什么要注意

lewis 1年前 (2024-04-11) 阅读数 12 #技术
在这篇文章中,我们来学习一下“JS解析urlencode编码怎样做,有什么要注意”的相关知识,下文有详细的讲解,易于大家学习和理解,有需要的朋友可以借鉴参考,下面就请大家跟着小编的思路一起来学习一下吧。


我们都知道urlencode编码一般用于url网址中,它的格式是带有%符号的十六进制编码,起着保护隐私的作用,例如这段url编码“%ce%d2%ca%c7%d6%d0%b9%fa%c8%cb(我是中国人)”,是gbk版本的,那么我们该如何来使用js解析这一段gbk2313的编码呢?代码如下:

//gbkStr是urlencode编码,作为参数传入
functiongbkconvert(gbkStr,callback){
varscript=document.createElement('script');
script.id='gbkconvert';
script.src='data:text/javascript;charset=gbk,gbkconvertCb("'+gbkStr+'");';
document.body.appendChild(script);
window.gbkconvertCb=(res)=>{
callback&&callback(res);
};
}

//使用解码函数,获得回调结果
gbkconvert('%ce%d2%ca%c7%d6%d0%b9%fa%c8%cb',(res)=>{
console.log(res);//输出我是中国人
})

代码分析:

本次js代码使用了一个callback回调函数,其实js本身没有urldecode这样的解码功能,这个函数的原理是定义script标签,添加到document对象中,来让浏览器识别gbk编码,然后打印出来。

提醒:

如果想要使用js来解析utf-8版的urlencode编码,则只需将上方函数中的“charset=gbk” 改成 “charset=utf-8” 即可。


到此,关于“JS解析urlencode编码怎样做,有什么要注意”的学习就结束了,希望能够解决大家的疑惑,另外大家动手实践也很重要,对大家加深理解和学习很有帮助。如果想要学习更多的相关知识,欢迎关注博信资讯站,小编每天都会给大家分享实用的文章!

版权声明

本文仅代表作者观点,不代表博信信息网立场。

热门