js如何实现提取url中的参数并替换指定键名的键值

参数的传递是网站开发中必不可少且极为重要组成部分,前端开发和后端参数的交互通常为post和get两种方式。

get即常见的url带参数的方式传递,那么当我们需要获取url中携带的参数并进行处理时要如何实现呢?

接下来我们就来看看如何实现获取url中的参数并替换指定的参数值。

实现url指定参数的替换分为三个步骤,分别如下:

一、提取url中携带的参数

function getUrlParams(url) {
// 通过 ? 分割获取后面的参数字符串
let urlStr = url.split('?')[1]
// 创建空对象存储参数
let obj = {};
// 再通过 & 将每一个参数单独分割出来
let paramsArr = urlStr.split('&')
for(let i = 0,len = paramsArr.length;i < len;i++){
// 再通过 = 将每一个参数分割为 key:value 的形式
let arr = paramsArr[i].split('=')
obj[arr[0]] = arr[1];
}
return obj
}

二、查找并替换指定参数

let asd = getUrlParams('/pages/index/index?store_id=1&type=1&showa=1&name=12222')
for (let var1 in asd) {
if(var1=='name'){
asd['name'] = '测试'
}
}

三、将替换的结果从新拼接到url上

function jsonUrl(e){
let url = '?'
for (let i in e) {
url+=(i+'='+e[i]+'&')
}
return url.slice(0,url.length-1)
}

通过上述三步即实现了提取url参数并替换的逻辑,那么接下来只需要将新的数据从新拼接即可。

let pat = '/pages/index/index'
pat = pat+jsonUrl(asd)
console.log(pat)

此方法适用于小程序、url等方式上。

六月初字帖坊小程序 你想要的字帖模板及工具,这里都有!