/**
* @function 重新设置url query参数,如果键名存在则更新,如果不存在则添加
* @param object 键值对
* @returns string
*/
function updateUrlQueryData(data) {
var url = new URL(window.location.href);
for (let k in data) {
var val = url.searchParams.get(k);
if (val != data[k]) {
url.searchParams.set(k, data[k]);
location.href = url.toString();
}
}
}
/**
* @function 获取url参数,若获取不到,返回参数2
* @param key string 键名
* @param default_value * 默认值
* @returns {*|string}
*/
function getQueryData(key, default_value = null) {
var val = new URL(window.location.href).searchParams.get(key);
if(val === null) {
return default_value === null ? val : default_value;
}
return val;
}
updateUrlQueryData({k: 'v', key: 'val'});
alert(getQueryData('k', 'vvv'));