js获取url中携带完整的域名及对应参数

    开发对url携带参数的解析操作,可以说是常规使用。可常见的解析有时并不能满足我们的需求,如url中携带的参数是由域名和域名携带的参数组成的参数。这种复杂类型的参数要如何进行正确的解析。

    文中就该问题给出详细的代码解析,该类最常见于页面跳转,跳转前将数据通过url携带,跳转新页面进行跳转域名的验证再跳转。

一、需解析的url数据
//参数url   
var url = https://www.baidu.com/s?wd=六月初工具站
https://www.xuexiareas.com?trage=encodeURIComponent(url)
//解析页面地址
https://www.xuexiareas.com?trage=https://www.baidu.com/s?wd=%E5%85%AD%E6%9C%88%E5%88%9D%E5%B7%A5%E5%85%B7%E7%AB%99
二、解析url,提取url中trage之后的参数

    2.1、在www.xuexiareas.com根域名页面下加入一下代码,进入根域名后就会解析当前链接的url地址

function getQueryString(name) { 
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象
var r = window.location.search.substr(1).match(reg); //匹配目标参数
if( r != null ) return decodeURIComponent( r[2] ); return null;
}
window.onload = function(){
if(getQueryString('target')){
console.log(getQueryString('target'))
}
}

注:如果是自定义解析链接,那么在getQueryString方法中,对于需要解析的数据需要进行从新处理。

即window.location.search这块逻辑的处理,本文就不详细描述该块逻辑的处理。

六月初字帖坊小程序 你想要的字帖模板及工具,这里都有!