简单版
* 获取URL中带的链接参数
* @param search 链接后缀
* @return {{}} 对象
*/
function getUrlParams (search) {
search = search || location.search;
var paramsSplit = search.replace(/^[^\?]*\?/i, '').split('&');
var params = {};
if (Array.isArray(paramsSplit)) {
paramsSplit.forEach(function (item) {
const itemSplit = item.split('=');
params[itemSplit[0]] = itemSplit[1];
});
}
return params
}
复杂版
* 获取URL中带的链接参数
* @param search 链接后缀
* @return {{}} 对象
*/
function getUrlParams (search) {
search = search || location.search;
// 判断是否为字符串类型
if (typeof search !== 'string') {
search = search.toString();
}
var paramsSplit = search.replace(/^[^\?]*\?/i, '').split(/&/);
var params = {};
// 数据为空
if (paramsSplit.length < 1) {
return params;
}
if (Array.isArray(paramsSplit)) {
paramsSplit.forEach(function (item) {
// 数据为空, 腿出方法
if (!item) {
return false;
}
var itemSplit = item.split(/=/);
// 判断字符串中是否有多个=
if (itemSplit.length >= 2) { // 是
var key = itemSplit.splice(0, 1);
params[key] = itemSplit.join('=');
}
});
}
return params
}