首页  >  文章  >  web前端  >  javascritp添加url参数将参数加入到url中_javascript技巧

javascritp添加url参数将参数加入到url中_javascript技巧

WBOY
WBOY原创
2016-05-16 16:35:211199浏览

将对象参数加入到url中,如果原来url中有则覆盖
js代码

function addToUrl(obj){ 
var aprotocol = location.protocol; 
var ahost = location.host; 
var apath = location.pathname; 
var asearch = location.search; 
var ahash = location.hash; 
var result = ''; 
console.log(obj); 
var joinObj = function(joinObj_obj){ 
var result = ''; 
for(var i in joinObj_obj){ 
result += i + '=' + joinObj_obj[i]; 
} 
return result; 
}; 
var splitSearchToObj = function(str){ 
var resObj = {}; 
var arr = str.split('&'); 
for(var i = 0; i < arr.length; i++){ 
resObj[arr[0]] = arr[1]; 
} 
return resObj; 
}; 
var existObjKey = function(existObjKey_obj, str){ 
for(var i in existObjKey_obj){ 
if(i == str){ 
return true; 
} 
} 
return false; 
}; 
var objExtend = function(obj1, obj2){ 
var result = {}; 
for(var i in obj1){ 
if(existObjKey(obj2, i)){ 
result[i] = obj2[i]; 
}else{ 
result[i] = obj1[i]; 
} 
} 
}; 
if(asearch == ''){ 
console.log(obj); 
result = aprotocol + '//' + ahost + apath + '&#63;' + joinObj(obj) + ahash; 
}else{ 
var oldSearchObj = splitSearchToObj(asearch.substr(1)); 
result = aprotocol + '//' + ahost + apath + joinObj(objExtend(oldSearchObj, obj)) + ahash; 

} 
return result; 
} 
addToUrl({'kd': 'aaa'}); 
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn