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')) //參數三