一、新增
/**
* 向网址中增加参数
* @param url
* @param obj 对象
*/
function addQueryParams(url, obj) {
let symbol = url.indexOf('?') > -1 ? '&' : '?'
Object.keys(obj).forEach((key, index) => {
if (index > 0) symbol = '&'
url += `${symbol}${key}=${obj[key]}`
})
return url
}
二、删除
/**
* 网址删除参数
* @param url
* @param arr 数组
*/
function removeQueryParams(url, arr) {
arr.forEach((item) => {
const reg = new RegExp(`[?&]${item}=[^&]*&?`)
url = url.replace(reg, (str) => {
const newStr = `${str.startsWith('?') ? '?' : '&'}${str.endsWith('&') ? '&' : ''}`
return newStr.slice(0, -1)
})
})
return url
}