url可以作为页面传参缓存数据的地方,那么解析其中的参数是很重要的。给定一个url如何从中提取数据。
使用字符串的方法处理
url后面更的参数叫query字符串以?开始,以&间隔的键值对key=value;
先找到?的位置,保留后面的部分,以&符号切割,在返回的数组以=切割,最后存储到一个对象并返回。
function parseQuery(url){
let index = url.indexOf('?')
let urlPrams = url.slice( index + 1)
let arr = urlPrams.split('&')
let prams = {}
for (const item of arr) {
let itemArr = item.split('=')
let [key, value] = itemArr
prams[key] = value
}
return prams
}
parseQuery('http://localhost:80/api/search?wd=abc&limit=10&offset=20')