通过URlSearchParams
构造函数进行获取 (介绍几个常用的)
-
首先通过构造函数创建一个实例对象,里面传的值一定是?号后面的,我们可以直接通过location.search获取
url
中的这个参数let url = "?name=csdn&age=10&claaback=fn"; const obj = new URLSearchParams(url);
-
append():在参数中添加新的键值,比如
url
中没有global=index那么我们可以手动添加obj.append("global","index");
-
get():传递一个键,字符串格式,输入参数中的键就能够查询相对的值。
obj.get("name") // 打印出来的是 csdn。
-
delete();传递一个键,字符串格式,通过这个方法就能够删除这个参数。
obj.delete("name")// 那么此时 name这个参数就为null
-
has():判断
url
中是否有这个参数 如果有就返回true 否则就返回false。obj.has("name") // 返回true
-
toString()
返回?号后面的字符串 无需传参。obj.toString() // 获得name=csdn&age=10&claaback=fn
-
set() : 给原有的参数设置值,第一个参数为键,第二个参数为值 如果给参数不存在则创建并设置值;如果存在则多个相同参数,匹配第一个,删除其他的。
obj.set("name","agg"); // 那么现在name的值就不是csdnle 就是agg
把url
所有的参数放入对象中
-
说明: 假设我们声明了一个空对象
const
= obj {}那么我们获取里面的属性可以通过 obj[“name”] 但是里面要是没有name,它就会帮我们在obj中添加一个name属性,前提是我们要赋值,它才会添加,如果obj对象中存在name属性那么它就会重赋值。
obj[“name”] =
csdn
此时obj = {
name : “
csdn
”; }
let url = "http://www.baidu.com?name=csdn&age=10&claaback=fn"; // 首先拿到这个参数我们通过split用?号切割 const arr = url.split