Location

Location接口表示其链接到的对象的位置(URL).所做的修改反映在与之相关的对象上。
Document和Window接口都有这样一个链接的Location,分别通过Document.location和Window.location访问。

Location对象属性

hash

设置或返回从井号(#)开始的URL(锚)。
假设当前的 URL 是: http://example.com:1234/test.htm#part2
那么console.log(location.hash)输出的是“#part2”

host

设置或返回主机名和当前URL的端口号。
假设当前的 URL 是: http://example.com:1234/test.htm#part2
那么console.log(location.host)输出的是“example.com:1234”

hostname

设置或返回当前URL的主机名。
假设当前的 URL 是: http://example.com:1234/test.htm#part2
那么console.log(location.hostname)输出的是“example.com”

href

href属性是一个可读可写的字符串,可设置或返回当前显示的文档的完整URL.
假设当前的 URL 是: http://example.com:1234/test.htm#part2
那么console.log(location.href)输出的是“http://example.com:1234/test.htm#part2”

pathname

pathname属性是一个可读可写的字符串,可设置或返回当前URL的路径部分。
假设当前的URL是: http://example.com:1234/test/test.htm#part2
那么console.log(location.pathname)输出的是“/test.test.html”

port

port属性是一个可读可写的字符串,可设置或返回当前URL的端口部分。
假设当前的URL是: http://example.com:1234/test.htm#part2
那么console.log(location.port)输出的是“1234”

protocol

protocol属性是一个可读可写的字符串,可设置或返回当前URL的协议。
假设当前的URL是: http://example.com:1234/test.htm#part2
那么console.log(location.protocol)输出的是“http:”
tip:如果输入端口号不对,输出的值是chrome-error

search

search属性是一个可读可写的字符串,可设置或返回当前URL的查询部分(问号?之后的部分)
假设当前的 URL 是: http://www.w3school.com.cn/ti…
那么console.log(location.search)输出的是“?f=hdom_loc_search”

Location对象方法

assign()

加载新的文档

reload()

重新加载当前文档

replace()

用新的文档替换当前文档

window.location.assign(url) : 加载 URL 指定的新的 HTML 文档。 就相当于一个链接,跳转到指定的url,当前页面会转为新页面内容,可以点击后退返回上一个页面。
window.location.replace(url) : 通过加载 URL 指定的文档来替换当前文档 ,这个方法是替换当前窗口页面,前后两个页面共用一个
窗口,所以是没有后退返回上一页的。即:
replace() 方法不会在 History 对象中生成一个新的记录。当使用该方法时,新的 URL 将覆盖 History 对象中的当前记录。

刷新页面的几种方法

1 history.go(0) 
2 location.reload() 
3 location=location 
4 location.assign(location) 
5 document.execCommand('Refresh') 
6 window.navigate(location) 
7 location.replace(location) 
8 document.URL=location.href 
    原文作者:唐僧洗头爱飘柔
    原文地址: https://segmentfault.com/a/1190000013128118
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞