UNPKG

front-standard-utils

Version:
41 lines (37 loc) 1.2 kB
/** * @desc 获取单个url参数 * @param key 对应key值的参数 * @param targetUrl 可选,不传获取当前地址的url,传入后获取targetUrl的参数 * @returns */ export const getUrlParam = (key: string, targetUrl = undefined) => { let query = targetUrl ?? window.location.search.substring(1); let vars = query.split('&'); for (var i = 0; i < vars.length; i++) { var pair = vars[i].split('='); if (pair[0] == key) { return pair[1]; } } return ''; }; /** * @desc 获取所有url参数 * @param targetUrl 可选,不传获取当前地址的url,传入后获取targetUrl的参数 * @returns */ export function getUrlParams(targetUrl: string) { let query = targetUrl ?? window.location.search.substring(1); // str为?之后的参数部分字符串 const str = query.substr(query.indexOf('?') + 1); // arr每个元素都是完整的参数键值 const arr = str.split('&'); // result为存储参数键值的集合 const result: any = {}; for (let i = 0; i < arr.length; i++) { // item的两个元素分别为参数名和参数值 const item = arr[i].split('='); result[item[0]] = item[1]; } return result; }