js获取url传递参数

方案1:

相当于asp的request.querystring,PHP的$_GET函数:

function GetRequest() {
  
  var url = location.search; //获取url中"?"符后的字串
   var theRequest = new Object();
   if (url.indexOf("?") != -1) {
      var str = url.substr(1);
      strs = str.split("&");
      for(var i = 0; i < strs.length; i ++) {
         theRequest[strs[i].split("=")[0]]=(strs[i].split("=")[1]);
      }
   }
   return theRequest;
}


var Request = new Object();
Request = GetRequest();
var 参数1,参数2,参数3,参数N;
参数1 = Request[''参数1''];
参数2 = Request[''参数2''];
参数3 = Request[''参数3''];
参数N = Request[''参数N''];

方案2:

利用正则表达式

function GetQueryString(name) {
   var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)","i");
   var r = window.location.search.substr(1).replace("?", "&").match(reg);
   if (r!=null) return (r[2]); return null;
}

彩蛋, 获取当前URL及其它参数:

//设置或获取对象指定的文件名或路径。
alert(window.location.pathname);


//设置或获取整个 URL 为字符串。
window.location.href

//设置或获取与 URL 关联的端口号码。
window.location.port


//设置或获取 URL 的协议部分。
window.location.protocol

//设置或获取 href 属性中在井号“#”后面的分段。
window.location.hash

//设置或获取 location 或 URL 的 hostname 和 port 号码。
window.location.host

//设置或获取 href 属性中跟在问号后面的部分。
window.location.search

原文地址:https://www.cnblogs.com/jiyang2008/p/5498578.html