js獲取url參數(shù)代碼實(shí)例分享(JS操作URL)
代碼很簡單,主要一個(gè)思路是把url參數(shù)解析為js對象,再做增、刪、改、查操作就很方便了~,這里做筆記。
var LG=(function(lg){
var objURL=function(url){
this.ourl=url||window.location.href;
this.href="";//?前面部分
this.params={};//url參數(shù)對象
this.jing="";//#及后面部分
this.init();
}
//分析url,得到?前面存入this.href,參數(shù)解析為this.params對象,#號(hào)及后面存入this.jing
objURL.prototype.init=function(){
var str=this.ourl;
var index=str.indexOf("#");
if(index>0){
this.jing=str.substr(index);
str=str.substring(0,index);
}
index=str.indexOf("?");
if(index>0){
this.href=str.substring(0,index);
str=str.substr(index+1);
var parts=str.split("&");
for(var i=0;i<parts.length;i++){
var kv=parts[0].split("=");
this.params[kv[0]]=kv[1];
}
}
else{
this.href=this.ourl;
this.params={};
}
}
//只是修改this.params
objURL.prototype.set=function(key,val){
this.params[key]=val;
}
//只是設(shè)置this.params
objURL.prototype.remove=function(key){
this.params[key]=undefined;
}
//根據(jù)三部分組成操作后的url
objURL.prototype.url=function(){
var strurl=this.href;
var objps=[];//這里用數(shù)組組織,再做join操作
for(var k in this.params){
if(this.params[k]){
objps.push(k+"="+this.params[k]);
}
}
if(objps.length>0){
strurl+="?"+objps.join("&");
}
if(this.jing.length>0){
strurl+=this.jing;
}
return strurl;
}
//得到參數(shù)值
objURL.prototype.get=function(key){
return this.params[key];
}
lg.URL=objURL;
return lg;
}(LG||{}));
LG只是我個(gè)人共同JS的名稱空間,無他。調(diào)用:
var myurl=new LG.URL("http://www.baidu.com?a=1");
myurl.set("b","hello"); //添加了b=hello
alert (myurl.url());
myurl.remove("b"); //刪除了b
alert(myurl.get ("a"));//取參數(shù)a的值,這里得到1
myurl.set("a",23); //修改a的值為23
alert (myurl.url());
- JS解決url傳值出現(xiàn)中文亂碼的另類辦法
- js正則解析URL參數(shù)示例代碼
- js獲取url參數(shù)值的兩種方式
- js和php如何獲取當(dāng)前url的內(nèi)容
- JSP中js傳遞和解析URL參數(shù)以及中文轉(zhuǎn)碼和解碼問題
- JS獲取url鏈接字符串 location.href
- 手機(jī)平板等移動(dòng)端適配跳轉(zhuǎn)URL的js代碼
- 在jsp頁面如何獲得url參數(shù)
- JS獲取URL中參數(shù)值(QueryString)的4種方法分享
- JS截取url中問號(hào)后面參數(shù)的值信息
- JS的encodeURI和java的URLDecoder.decode使用介紹
- Js+Jq獲取URL參數(shù)的集中方法示例代碼
- js獲取當(dāng)前頁面的url網(wǎng)址信息
- 用js通過url傳參把數(shù)據(jù)從一個(gè)頁面?zhèn)鞯搅硪粋€(gè)頁面
- JS來動(dòng)態(tài)的修改url實(shí)現(xiàn)對url的增刪查改
- 一個(gè)JavaScript函數(shù)把URL參數(shù)解析成Json對象
- nodejs中轉(zhuǎn)換URL字符串與查詢字符串詳解
- node.js中的url.parse方法使用說明
- NodeJS學(xué)習(xí)筆記之(Url,QueryString,Path)模塊
- nodejs URL模塊操作URL相關(guān)方法介紹
- JS動(dòng)態(tài)修改圖片的URL(src)的方法
- 移除AngularJS下URL中的#字符的方法
- JavaScript操作URL的相關(guān)內(nèi)容集錦
相關(guān)文章
前端使用JSON.stringify實(shí)現(xiàn)深拷貝的巨坑詳解
這篇文章主要為大家介紹了JSON.stringify實(shí)現(xiàn)深拷貝的巨坑詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07webpack與SPA實(shí)踐之管理CSS等資源的方法
本篇文章主要介紹了webpack與SPA實(shí)踐之管理CSS等資源的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-12-12實(shí)現(xiàn)div滾動(dòng)條默認(rèn)最底部以及默認(rèn)最右邊的示例代碼
下面小編就為大家分享一篇實(shí)現(xiàn)div滾動(dòng)條默認(rèn)最底部以及默認(rèn)最右邊的示例代碼,代碼非常簡潔,具有很好的參考價(jià)值,希望對大家有所幫助2017-11-11JavaScript數(shù)組去重算法實(shí)例小結(jié)
這篇文章主要介紹了JavaScript數(shù)組去重算法,結(jié)合實(shí)例形式總結(jié)分析了JavaScript數(shù)組去重相關(guān)的讀寫、遍歷、比較、排序等操作及算法改進(jìn)相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2018-05-05Easyui Tree獲取當(dāng)前選擇節(jié)點(diǎn)的所有頂級父節(jié)點(diǎn)
這篇文章主要介紹了Easyui Tree獲取當(dāng)前選擇節(jié)點(diǎn)的所有頂級父節(jié)點(diǎn),以及easyUI Tree顯示選中節(jié)點(diǎn)的所有父節(jié)點(diǎn)的實(shí)現(xiàn)代碼,需要的朋友可以參考下2017-02-02js驗(yàn)證IP及子網(wǎng)掩碼的合法性有效性示例
這篇文章主要介紹了js驗(yàn)證IP及子網(wǎng)掩碼的有效性,需要的朋友可以參考下2014-04-04