1 // 方法一
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‘)) //参数三