js獲取地址欄的幾種方法


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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM