假设需要获取页面间通过 Get() 方法传递的多个参数。
www.test.com/index.html?id=1&name=Gnahz
我们可以通过浏览器提供的 Web API: URLSearchParams 接口来处理 URL
- 通过 Location 对象的 search 方法获取字符串(问号 ? 后面的所有数据: 参数名和参数)。
- 通过 URLSearchParams 对象的 get() 方法就可获取想要的参数。
var params = window.location.search; // ?id=1&name=Gnahz
var searchParams = new URLSearchParams(params);
console.log(searchParams.get('id')); // 输出:1
console.log(searchParams.get('name')); // 输出:Gnahz
www.test.com/index.html?id=1
如果 URL 的参数是单个的话,也可通过分割字符串的方式获取。
- 先通过 Location 对象的 search 方法 获取字符串,然后通过 substring() 方法提取字符,最后使用 split () 分割字符串的方法获取到参数。
window.location.search.substring(1).split('id=')[1] // 1
console.log(window.location.search) //输出:?id=1
console.log(window.location.search.substring(1)) // 输出:id=1
console.log(window.location.search.substring(1).split('id=')[1])// 输出:1
文章永久链接:https://tech.souyunku.com/24706