Location对象

468 阅读1分钟

Location对象是window对象的一部分,应该百分之百的前端开发用过这个对象,但几乎所有人也都是仅仅使用location.href。但是location对象上面有好几个属性和方法对开发很有帮助。

属性:location.href

可读可写,设置或返回当前的URL地址。

属性:location.host

可读可写,设置或返回当前 URL 的主机名称和端口号。

属性:location.hostname

可读可写,设置或返回当前 URL 的主机名称。

属性:location.href

可读可写,设置或返回 URL 的锚部分(从 # 号开始的部分)。

属性:location.port

可读可写,设置或返回 URL 的端口号。

属性:location.pathname

可读可写,设置或返回 URL 的路径部分。也就是端口号之后,从/开始。

属性:location.protocol

可读可写,设置或返回 URL 的协议。

属性:location.search

可读可写,设置或返回 URL 的参数部分,从?开始,包含?。

方法:location.assign(url)

加载新的文档,其实就是跳转新的地址。

方法:location.reload(true/false)

刷新当前页面,false与F5刷新一样,true与shift+F5一样。

方法:location.replace(url)

跳转新的地址,且没有历史记录在浏览器,也就是替换当前的文档。

上面所有的属性和方法的设置都会刷新页面,在一些业务场景下会非常有用,比如单页面应用,参数改变,单页面是不会重新执行生命周期的,使用search方法就能刷新页面,或者跳转也是,我们希望重定向,又不希望浏览器记住历史记录,使用replace方法。

欢迎关注Coding个人笔记公众号