方法一:自己写方法实现
示例代码
参考自:JS 获取 URL参数 | 菜鸟教程
// @Desc: 获取URL路径上查询参数值 // @params: urlStr:完整URL路径字符串,name:查询参数名 // @return: URL查询参数值 function getUrlParamVal(urlStr, name){ var url = new URL(urlStr); var query = url.search.substr(1); var vars = query.split("&"); for (var i=0; i<vars.length; i++) { var pair = vars[i].split("="); if(pair[0] == name){return pair[1];} } return null; }使用
var urlString = "https://www.example.com:8000/path?userNo=000123"; console.log(getUrlParamVal(urlString, "userNo")); //输出 000123方法二:一行代码实现,返回对象
示例代码
var urlStr="https://www.example.com:8000/path?userNo=000123&userRole=主管"; //一行代码实现将URL查询参数返回到对象中 Object.fromEntries(new URLSearchParams(new URL(urlStr).search)); //返回对象如下 {"userNo": "000123", "userRole": "主管"}方法三:使用get方法,得到某一键值
示例代码
// 1. 获取地址栏查询字符串 (?id=123&type=book) const queryString = location.search; // 2. 创建URLSearchParams实例,得到“类键值对数组”,如展开后[ ['a', '1'], ['b', '2'] ],其中单个['a', '1']就是一个Entry const urlParams = new URLSearchParams(queryString); // 3. 获取参数值 const id = urlParams.get('id'); const type = urlParams.get('type');