1.用split方法分割求出所有参数。
2.分两种情况,有指定参数和无指定参数。
3.分情况求出结果,处理结果返回指定格式数据。
getUrlParam (sUrl, sKey) {
var paramArr = sUrl.split('?')[1].split('#')[0].split('&') // 用split方法分割求出所有参数
if (sKey) { // 有指定参数
var result = []
for (let i = 0; i < paramArr.length; i++) {
const element = paramArr[i].split('=')
const tempItem = element[0]
if (tempItem === sKey) { // 判断和指定参数是否相同
result.push(element[1])
}
}
switch (result.length) { // 结果处理,返回指定结果
case 0:
return ''
case 1:
return result[0]
default:
return result
}
} else { // 没有指定参数
var objResult = {}
for (let i = 0; i < paramArr.length; i++) {
const element = paramArr[i].split('=')
if (!(element[0] in objResult)) { // 判断键是否存在
objResult[element[0]] = []
}
objResult[element[0]].push(element[1])
}
return objResult
}
}
京公网安备 11010502036488号