JS解析url查询参数的简单代码
2017-08-07 1404
具体代码如下所述:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | var path = 'www.u.com/home?id=2&type=0&dtype=-1'; function parseUrl(url){ var result = []; var query = url.split("?")[1]; var queryArr = query.split("&"); queryArr.forEach(function(item){ var obj = {}; var value = item.split("=")[0]; var key = item.split("=")[1]; obj[key] = value; result.push(obj); }); return result; } console.log(parseUrl(path)); //[{id: '2'},{type: '0'},{dtype: '-1'}] |
好了,下面看下js获取url参数值的两种方式
方法一:正则分析法
代码如下:
1 2 3 4 5 | function getQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r = window.location.search.substr(1).match(reg); if (r != null) return unescape(r[2]); return null; } |
调用方法:
1 2 | alert(GetQueryString("参数名1"));alert(GetQueryString("参数名2")); alert(GetQueryString("参数名3")); |
方法二
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <Script language="javascript"> 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]]=unescape(strs[i].split("=")[1]); } } return theRequest; } </Script> |
调用方法:
1 2 3 4 5 6 7 8 9 | <Script language="javascript"> var Request = new Object(); Request = GetRequest(); var 参数1,参数2,参数3,参数N; 参数1 = Request['参数1']; 参数2 = Request['参数2']; 参数3 = Request['参数3']; 参数N = Request['参数N']; </Script> |
好了,到此结束。
上一篇:什么叫资本运作