首页 > 代码库 > js获取url参数的两种方法

js获取url参数的两种方法

js获取参数,在以前我都是用正在去拆分,然后获取,这种方式感觉是最简单的

方式1:

function QueryString(item){    var sValue=http://www.mamicode.com/location.search.match(new RegExp("[\?\&]"+item+"=([^\&]*)(\&?)","i"))    return sValue?sValue[1]:sValue}//使用方法//url=http://www.xxx.com?ID=100&name=domvar ID=QueryString("ID");  var name=QueryString("name");


这种方式每一次调用QueryString()这个方法时都要去解析一次Url(当然多参数的情况下解析的时间也不会慢)

方式2:

           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();                                //url--http:www.xxx.com?id=1&&kid=2                 var id=Requesr["id"];

 

这种方式一次性将参数存放到一个对象中,下去取参数时就用会再次去解析Url。

 

js获取url参数的两种方法