function
geturlparams
(name)
window.location =
"";var name =
geturlparams
("name");
//elephant
var age =
geturlparams
("age");
//25
var *** =
geturlparams
("***");
//male
首先理解定義的正規表示式,(^|&)
意思是從頭開始匹配字元&
,=([^&]*)
意思是匹配=
後面零個或多個不是&
的字元,直至碰到第乙個&
為止,(&|$)
意思就是匹配最後乙個&
,在正規表示式中,增加乙個()
代表著匹配陣列中增加乙個值, 因此**中的正則匹配後陣列中應包含4個值, 在geturlparams("name")
函式中,此時r
獲取到的陣列應該是["name=elephant&", "", "elephant", "&"]
**中window.location.search
意思是取window.location
中 『?
『後面的值包括』?
』,因此所得到的值是"?name=elephant&age=25&***=male
"
substr()
這個函式的作用是擷取字串,在**中window.location.search.surstr(1)
意思就是擷取第乙個字元後面的字串,所得到的值即是"name=elephant&age=25&***=male
"
unescape
這個函式的作用是解碼escape
編碼後的字串
function
parse_url
(_url)
;//定義陣列
url.
replace
(pattern,
function
(a, b, c));
return parames;
//返回這個陣列.
}var url =
""var params =
parse_url
(url)
;// ["name=elephant", "age=25", "***=male"]
當replace
匹配到name=elephant
時.那麼就用執行function(a,b,c);
其中a
的值為:name=elephant
,b的值為name
,c的值為elephant
;(這是反向引用.因為在定義正規表示式的時候有兩個子匹配.),然後將陣列的key
為name
的值賦為elephant
;然後完成.
再繼續匹配到age=25
;此時執行function(a,b,c)
;其中a的值為:age=25
,b的值為age
,c的值為25
;然後將陣列的key為id
的值賦為25
.
JS正則獲取url的引數
獲取url上的引數 假如url是這樣的 要取得引數a的值11 和 b 的值 2。c 3首先要知道url帶的引數都在?後面的查詢串,有兩種方法可以獲取 1.location.search 直接獲取查詢串 location.search a 11 b c 3 2.location.href 和 spli...
獲取url引數
想要獲取url的引數,只要記住 url的引數是存在window.location.search中的,然後再根據引數的個數等特點用不同的方式擷取,或者匹配即可。方法一 正則法 function getquerystring name return null 呼叫 注 記得打引號 getquerystr...
獲取url引數
想要獲取url的引數,只要記住 url的引數是存在window.location.search中的,然後再根據引數的個數等特點用不同的方式擷取,或者匹配即可。方法一 正則法 function getquerystring name return null 呼叫 注 記得打引號 getquerystr...