js 获取url各个参数。

javascript 获取当前 URL 参数的两种方法:

  //返回的是字符串形式的参数,例如:class_id=3&id=2& 

  function getUrlArgStr(){     

  var q=location.search.substr(1);     

  var qs=q.split('&');     

  var argStr='';    

   if(qs){         

  for(var i=0;i<qs.length;i++){

             argStr+=qs[i].substring(0,qs[i].indexOf('='))+'='+qs[i].substring(qs[i].indexOf('=')+1)+'&'; 

        }     

  }     

  return argStr; 

  } 

  //返回的是对象形式的参数 

  function getUrlArgObject(){    

   var args=new Object();     

  var query=location.search.substring(1);//获取查询串

     var pairs=query.split(",");//在逗号处断开

     for(var i=0;i<pairs.length;i++){         

    var pos=pairs[i].indexOf('=');//查找name=value

        if(pos==-1){//如果没有找到就跳过             

    continue;         

  }         

  var argname=pairs[i].substring(0,pos);//提取name

      var value=pairs[i].substring(pos+1);//提取value        

      args[argname]=unescape(value);//存为属性  

  }    

  return args;//返回对象 

}

另外列出一些 javascript 获取url中各个部分的功能方法:

  1. window.location.host; //返回url 的主机部分,例如:www.xxx.com 
  2. window.location.hostname; //返回www.xxx.com 
  3. window.location.href; //返回整个url字符串(在浏览器中就是完整的地址栏),例如:www.xxx.com/index.php?class_id=3&id=2 
  4. window.location.pathname; //返回/a/index.php或者/index.php 
  5. window.location.protocol; //返回url 的协议部分,例如: http:,ftp:,maito:等等。 
  6. window.location.port //url 的端口部分,如果采用默认的80端口,那么返回值并不是默认的80而是空字符
原文地址:https://www.cnblogs.com/wangzhitie/p/5202754.html