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