js获取url中的参数,且中文参数不会出现乱码

来源:网络 文章列表 2020-10-27 8
在项目开发中,我们常会通过url传参,但是如果遇到中文获取就回乱码,如:传递参数中带有中文url?aaa=你好啊用js获取aaa并显示到页面上出现乱码。该怎么解决呢?

在项目开发中,我们常会通过url传参,但是如果遇到中文获取就回乱码,如:传递参数中带有中文url?aaa=你好啊用js获取aaa并显示到页面上出现乱码。该怎么解决呢?

function getQueryString(key){
        var reg = new RegExp("(^|&)"+key+"=([^&]*)(&|$)");
        var result = window.location.search.substr(1).match(reg);
        return result?decodeURIComponent(result[2]):null;
      }

window.search取到的是queryString,如:?a=2&b=3

如url为:http://localhost/test/test.html?a=2&b=3

 

console.log(getQueryString('a'));//2
console.log(getQueryString('b'));//3

 这里有个地方要说明:decodeURI() 与 encodeURI();decodeURIComponent() 与 encodeURIComponent() 配对使用

不出现乱码也是因为使用了 decodeURIComponent  函数,网上大部分的代码都没有进行中午乱码的处理。

 

 

 

 

腾讯云限量秒杀

1核2G 5M 50元/年 2核4G 8M 74元/年 4核8G 5M 818元/年 CDN流量包 100GB 9元

版权声明

本站部分原创文章,部分文章整理自网络。如有转载的文章侵犯了您的版权,请联系站长删除处理。如果您有优质文章,欢迎发稿给我们!联系站长:
愿本站的内容能为您的学习、工作带来绵薄之力。

评论

  • 随机获取
点击刷新
精彩评论

友情链接