location对象
location对象:
里面存储了和网页地址所有内容有关的信息。
https://baike.baidu.com/item/%E9%A9%AC%E4%BF%9D%E5%9B%BD/50106525?fr=aladdin#2_1
http https 传输协议
www.baidu.com 域名
?fr=aladdin 查询字符
#2_1 hash(锚点定位)
- location对象属性:
href:地址信息。
跳转页面:location.href = “XXX”;
search:查询字符串 一般是用于传输数据,需要进行解析。
split(分割字符串)
返回值:分割好的字符串组成的数组: 苏轼|辛弃疾|李商隐 =》[苏轼,辛弃疾,李商隐]
解析查询字符
1.“ ”
2.?name=zhangsan&age=18 - 步骤:
- 需要准备一个函数进行解析,这个函数还需要一个参数。
参数:要解析的字符串 - 开始解析
1.判断如果为空字符串,直接返回 空对象。
2.如果不是空字符串,解析字符串,并将结果放入对象中。
(1)截取掉第一个字符。
(2)剩余字符按照&进行分割,得到一个数组。
(3)遍历数组,得到 “属性名=属性值”这样格式的字符串。
(4)对每一个字符串,按照=分割,得到一个属性和属性值组成的数组。
(5)将属性名和属性值赋值给对象 //obj[t[0]]=t[1];
(6)返回对象。
方法:
assign():改变浏览器地址栏中的地址,并记录到历史中。
【注意】设置location.href 就会调用assign方法。
replace() 替换浏览器地址栏中的地址。
reload() 重新加载 F5
reload(true) 强制加载,不适用缓存。
(1)地址栏上#及后面的内容
console.log(window.location.hash);
(2)主机名及端口号
console.log(window.location.host);
(3)主机名
console.log(window.location.hostname);
(4)文件的路径---相对路径
console.log(window.location.pathname);
(5)端口号
console.log(window.location.port);
(6)协议
console.log(window.location.protocol);
(7)搜索的内容
console.log(window.location.search);
(8)设置跳转的页面的地址
location.href="http://www.jd.com";
补充:
Location对象的属性 | 返回值 |
---|---|
location.href | 获取或者设置url |
location.host | 返回主机(域名) |
location.port | 返回端口号,若无则返回空 |
location.pathname | 返回路径 |
location.search | 返回参数 |
location.hash | 返回片段#后面内容常见于链接锚点 |
案例说明
一秒后自动进行跳转页面:
<script>
// 延时跳转页面
window.onload = function skip() {
setTimeout(hear, 1000);
}
function hear() {
location.href = "https://www.baidu.com";
}
</script>
split分割好的字符串分成数组
window.onload = function() {
var str2 = "苏轼|辛弃疾|李商隐";
console.log(str2.split("|"));
}
navigator
navigator:获取浏览器客户端的一些信息。
<script>
console.log(navigator.userAgent);
console