如何拿到浏览器地址栏url中的参数
啥话不说先上代码
*[HTML]: 首先我们用"http://http://127.0.0.1:5500/d.html?userid=123456&name=tom"代表地址栏中的url
var Href = "http://http://127.0.0.1:5500/d.html?userid=123456&name=tom";
function herf() {
var src = Href.split("?");
if (src[0] == Href) {
return "";
}
var arr = src[1].split("&");
var obj = {};
for (var i = 0; i < arr.length; i++) {
var arr1 = arr[i].split("=");
obj[arr1[0]] = arr1[1];
}
return obj;
}
var href = herf(Href);
console.log(herf(Href));
一下内容是我个人对代码的理解,可以参考理解,如有错误,欢迎各位大佬指出。
- var src = Href.split("?");
这里的split("?")可以将url从?这里切开分成两段,并且把他们放在同一个数组中分别为src[0]=http://http://127.0.0.1:5500/d.html和是src[1]=userid=123456&name=tom - 这里if语句是进行判断,看切割后是否发生变化。如果不等于程序继续向下执行,如果等于说明url没有携带参数,返回空字符
- var arr = src[1].split("&");
这里可以看出是对userid=123456&name=tom再次进行切割
切割后的结果如下图
- 然后var 一个空对象,然后对arr数组再次进行循环切割
再将切割后的数据放到空对象obj中,然后用return 将obj返回出来