首頁  >  文章  >  web前端  >  JavaScript對URL解析查詢參數的程式碼講解

JavaScript對URL解析查詢參數的程式碼講解

巴扎黑
巴扎黑原創
2017-08-08 09:58:511402瀏覽

本文透過簡單程式碼為大家介紹了js解析url查詢參數的方法,然後在文章下面給大家介紹了js獲取url參數值的兩種方式,非常不錯,具有參考借鑒價值,需要的朋友參考下吧

廢話不多說了,直接給大家貼程式碼了,具體程式碼如下所述:


#
var path = 'www.u.com/home?id=2&type=0&dtype=-1';
function parseUrl(url){
  var result = [];
  var query = url.split("?")[1];
  var queryArr = query.split("&");
  queryArr.forEach(function(item){
    var obj = {};
    var value = item.split("=")[0];
    var key = item.split("=")[1];
    obj[key] = value;
    result.push(obj);
  });
  return result;
}
console.log(parseUrl(path)); 
//[{id: '2'},{type: '0'},{dtype: '-1'}]

好了,下面看下js取得url參數值的兩種方式

方法一:正規分析法

程式碼如下:


function getQueryString(name) { 
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); 
var r = window.location.search.substr(1).match(reg); 
if (r != null) return unescape(r[2]); return null; 
}

呼叫方法:


alert(GetQueryString("参数名1"));alert(GetQueryString("参数名2")); 
alert(GetQueryString("参数名3"));

方法二

程式碼如下:


<Script language="javascript"> 
function GetRequest() { 
var url = location.search; //获取url中"?"符后的字串 
var theRequest = new Object(); 
if (url.indexOf("?") != -1) { 
var str = url.substr(1); 
strs = str.split("&"); 
for(var i = 0; i < strs.length; i ++) { 
theRequest[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]); 
} 
} 
return theRequest; 
} 
</Script>

呼叫方法:


<Script language="javascript"> 
var Request = new Object(); 
Request = GetRequest(); 
var 参数1,参数2,参数3,参数N; 
参数1 = Request[&#39;参数1&#39;]; 
参数2 = Request[&#39;参数2&#39;]; 
参数3 = Request[&#39;参数3&#39;]; 
参数N = Request[&#39;参数N&#39;]; 
</Script>

以上是JavaScript對URL解析查詢參數的程式碼講解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn