以此 url 为例:http://localhost/index.html?id=310&name=xia&phone=13800138000
//获取url传递的信息 let query = location.search; // ?id=310&name=xia&phone=13800138000 let searchParams = new URLSearchParams(query); // 简单使用 // 只需要new一个URLSearchParams的实例即可,代码: for (let v of searchParams) { console.log(v); } // ["id", "310"] // ["name", "xia"] // ["phone", "13800138000"] // 获取单个字段 // 假如现在我只想获取单个字段的值,该怎么办呢?只需要调用这个实例的get方法即可, 代码: searchParams.get('id') // "310" searchParams.get('name') // "xia" searchParams.get('phone') // "13800138000" // 设置字段 // 有时候想重写一个字段,这时候需要使用set方法,代码: searchParams.set('id', '123'); // 判断字段是否存在 // 使用实例的has方法进行判断,代码: searchParams.has('id') // "310" searchParams.has('name') // "xia" // 添加字段 // 实例提供了append方法来添加字段,这个方法接收两个参数,前者是key,后者是value,代码: searchParams.append('age', 26); searchParams.has('age'); // true searchParams.get('age'); // 26 // 删除字段 // 现在不想要phone字段了,直接使用delete即可,代码: searchParams.delete('phone'); searchParams.has('phone'); // false
兼容性:现代浏览器基本没有啥大问题,但是IE的支持不是很理想。
本文作者:猫老板的豆
本文链接:https://www.cnblogs.com/bingcola/p/16499192.html