获取URL中"?"后面的字串,是前端常见的一种需求,本文将介绍几种获取URL参数的方法。
方法一
function getQueryString(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if (r != null) return decodeURI(r[2]);
return null;
}
使用正则表达式,分别匹配URL中"?"后面的字串。可通过传入参数名,获取指定参数。
例如:
URL:https://www.example.com?param1=foo¶m2=bar
获取参数param1的值:
getQueryString('param1');
// 输出:"foo"
方法二
function getUrlParam(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]);
return null;
}
使用正则表达式,匹配URL中"?"后面的字串。可通过传入参数名,获取指定参数。同时对获取到的参数进行了decodeURI()解码。
例如:
URL:https://www.example.com?param1=%E4%B8%AD%E6%96%87¶m2=bar
获取参数param1的值:
getUrlParam('param1');
// 输出:"中文"
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js获取url中”?”后面的字串方法 - Python技术站