2 var strHref = "http://网址ip/index.html?a=参数1&b=参数二&c=参数三"
3 var intPos = strHref.indexOf("?")
4 console.log(intPos) // 22
5 var strRight = strHref.substr(intPos + 1)
6 // var strRight = strHref.split("?")[1]
7 // console.log(strHref.split("?")[1]) // a=参数1&b=参数二&c=参数三
8 console.log(strRight) // a=参数1&b=参数二&c=参数三
9 var arrTmp = strRight.split('&')
10 console.log(arrTmp) //["a=参数1", "b=参数二", "c=参数三"]
11 var arr = []
12 for (var i = 0 ; i < arrTmp.length; i++) {
13 var arrTemp = arrTmp[i].split('=')
14 var obj = {}
15 obj[arrTemp[0]] = arrTemp[1]
16 arr.push(obj)
17 console.log(arrTemp) //["a", "参数1"],["b", "参数二"],["c", "参数三"]
18 }
19 console.log(arr) // [{a: "参数1"}, {b: "参数二"}, {c: "参数三"}]
1 // 方法二
2 function GetQueryString (name) {
3 var strHref = "http://网址ip/index.html?a=参数1&b=参数二&c=参数三"
4 var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)")
5 // var r = window.location.search.substr(1).match(reg)
6 var r = strHref.substr(1).match(reg)
7 // if (r !== null && r.toString().length > 1) {
8 if (r !== null) {
9 return r[2]
10 } else {
11 return null
12 }
13 }
14 console.log(GetQueryString('a')) // null
15 console.log(GetQueryString('b')) //参数二
16 console.log(GetQueryString('c')) //参数三
17
18 function getQueryString (name) {
19 var strHref = "http://网址ip/index.html?a=参数1&b=参数二&c=参数三"
20 // var strHref = window.localtion.search
21 // if(strHref.index('?') === -1) {return null} // 如果没有传参数直接返回null
22 // key存在先通过search取值 如果取不到就通过hash来取
23 strHref = strHref.substr(1) || strHref.split("?")[1]
24 // strHref = strHref.substr(1) || window.location.hash.split("?")[1]
25 if (strHref) {
26 var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)")
27 var r = strHref.match(reg)
28 if (r != null) {
29 return r[2]
30 } else {
31 return null
32 }
33 }
34 }
35 console.log(getQueryString('a')) // null
36 console.log(getQueryString('b')) //参数二
37 console.log(getQueryString('c')) //参数三