1、解析 url 参数成对象
1 analysis(url) {
2 var arr = url.split('?');
3 var brr = arr[1].split('&');
4 var obj = {};
5 for (var i = 0; i < brr.length; i++) {
6 var crr = brr[i].split('=');
7 obj[crr[0]] = crr[1];
8 }
9 return obj;
10 }
方法二
function getWindonHref() {
var sHref = window.location.href;
var args = sHref.split('?');
if (args[0] === sHref) {
return '';
}
var hrefarr = args[1].split('#')[0].split('&');
var obj = {};
for (var i = 0; i < hrefarr.length; i++) {
hrefarr[i] = hrefarr[i].split('=');
obj[hrefarr[i][0]] = hrefarr[i][1];
}
return obj;
}
传送门
2、将对象拼接成url参数
1 paramUrl(data) {
2 let url = ''
3 // 遍历data对象,取出需要的参数
4 for (var k in data) {
5 // 如果当前value为undefined ,则返回空字符串
6 let value = data[k] !== undefined ? data[k] : ''
7 // 得到参数,并且拼接参数,为下一步拼接到url后面做准备
8 url += '&' + k + '=' + value
9 }
10 // 如果url存在,则去除首字符并返回,因为主函数已经包含了'&',否则返回空串
11 return url ? url.substring(1) : ''
12}
传送门