/** * This script power by Mure.Yang (2024/05/11) */ // -- 获取指定参数值 (地址链接模式) ---------------------------------------------------- function getUrlParam(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if (r != null) return unescape(r[2]); return null; } // -- 参数字符串 -------------------------------------------------------------------- const QueryString = { // 解析当前URL中的查询字符串,并返回一个对象 parse: function(query) { const params = new URLSearchParams(query); const result = {}; params.forEach((value, key) => { result[key] = value; }); return result; }, // 构建查询字符串 build: function(params) { return new URLSearchParams(params).toString(); }, // 更新URL中的多个参数 updateParams: function(params) { // 获取当前URL const url = new URL(window.location); // 解析当前URL的查询字符串 let queryParams = this.parse(url.search); // 遍历传入的对象,更新参数值 Object.keys(params).forEach(key => { queryParams[key] = params[key]; }); // 更新查询字符串 url.search = this.build(queryParams); // 返回更新后的URL return url.href; } }; // -------------------------------------------------------------------------------