<script type="text/javascript">
//测试的url:zhengze.html?name=lisi&gender=女&age=100
function getParamValue(param){
var urlStr,reg,regResult,result;
//获取包括问号之后的查询参数字符串(即?name=lisi&gender=女&age=100,这里没有直接去除?,因此包含?)
urlStr = window.location.search;
//字符串拼接成正则表达式,[^&]表示匹配非&的字符,[^&]+表示多次匹配非&的字符,/g表示全局查询
reg = "/"+param+"=[^&]+/g";
//eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。,若不进行转换,则该正则表达式不可以
reg = eval(reg);
//将匹配结果转化成字符串
regResult = urlStr.match(reg).toString();
//通过=切割字符串,组成数组,下标0为所查询的参数,下标1为参数值
result = regResult.split('=');
//返回结果(返回的是数组),若想直接返回参数值,则将return result改成return decodeURIComponent(resul[1])即可
return result;
}
var result = getParamValue('name');
//decodeURIComponent()用于解码url中被编码的中文字符,若不解码,对英文字符串可正常使用,但中文获取到的则是编码后的字符串
document.write("查询参数:"+result[0]+"</br>"+"该参数的值:"+decodeURIComponent(result[1]))
</script>
结果展示