new URL()解析url
例如:
var a = 'https://aaaaaa.com/write#page?freshman=1&name=laowang'
var b = new URL(a);
console.log(b);
1.属性
hash、host(含端口号)、hostname(不含端口号)、href、origin、password、pathname、port、protocol、search(序列化查询部分)
2.方法
toString(): 在 URL 对象上调用 toString() 方法将返回序列化的 URL
3.searchParams属性
append(): 给url增加一个参数
delete(): 删除url的某个参数
set(): 给url增加一个参数,当增加的参数已存在时,则替换第一个,其他的删除
has():判断url中是否含有某个参数(true或false)
get():获取url中的某个参数(eg: b.searchParams.get(name) //laowang)
getAll(): 获取url中的某个参数的所有值
entries():返回一个 iterator 对象,可以遍历所有键/值对,Iterator是一种接口机制,为各种不同的数据结构提供统一的访问机制
for(var obj of b.searchParams.entries()) {
console.log(obj);
}
// ["freshman", "1"]
// ["name", "laowang"]
keys(): 返回 iterator 此对象包含了键/值对的所有键名。
for(var key of b.searchParams.keys()) {
console.log(key);
}
// freshman name
values():返回 iterator 此对象包含了键/值对的所有值
for(var value of b.searchParams.values()) {
console.log(value);
}
// 1 laowang
sort():按键名排序。