1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
|
function getParam(url, name) { var reg = new RegExp("(^|\\?|&)" + name + "=([^&]*)(\\s|&|$)", "i"); if (reg.test(url)) return unescape(RegExp.$2.replace(/\+/g, " ")); return ""; }
function Parse(str) { if (typeof str !== 'string') { return {}; } if (str.indexOf('?') >= 0) { s = str.substring(str.indexOf('?') + 1) } return decodeURIComponent(s).split('&').map(param => { const tmp = param.split('='); const key = tmp[0]; let value = tmp[1] || true; if (typeof value === 'string' && !isNaN(Number(value))) { value = Number(value); } return { key, value }; }).reduce((params, item) => { const { key, value } = item; if (typeof params[key] === 'undefined') { params[key] = value; } else { params[key] = Array.isArray(params[key]) ? params[key] : [params[key]]; params[key].push(value); } return params; }, {}); }
|