利用JavaScript获取url中的参数是一个很常用的程序,也是前端面试常有的面试题.实现这个程序的方法有很多种,通常采用正则匹配或者字符串截取的方法. 正则匹配是一个比较好的方法,不过对于不会正则的前端初学者不太适合.这里采用转化为对象的方法.代码如下:
function getUrl(url) {
let str = url.split('?')[1], // 通过"?"得到一个数组,取?后面的参数
items = str.split('&') // 通过"&"分割成数组
let arr, name, value
let result = {}
for (let i = 0; i < items.length; i++) {
arr = items[i].split('=') // 通过"="分割出每个参数的key和value
name = arr[0]
value = arr[1]
result[name] = value
}
return result
}
var url = 'http://www.baidu.com?key1=1&key2=2&key3=3'
console.log(getUrl(url).key2) // 2
这个方法理解容易,而且使用方便,也不用担心参数的顺序.
查看原文:https://blog.noob6.com/2018/06/04/the-way-to-get-query-in-url/