Location对象
Location
对象表示其链接到的对象的位置URL
,所做的修改反映在与之相关的对象上。Document
和Window
对象都有这样一个链接到Location
,分别通过document.location
和window.location
访问。
属性
location.href
: 包含整个URL
的一个DOMString
,DOMString
是一个UTF-16
字符串,由于JavaScript
已经使用了这样的字符串,所以DOMString
直接映射到一个String
。location.protocol
: 包含URL
对应协议的一个DOMString
,最后有一个:
。location.host
: 包含了域名的一个DOMString
,可能在该串最后带有一个:
并跟上URL
的端口号。location.hostname
: 包含URL
域名的一个DOMString
。location.port
: 包含端口号的一个DOMString
。location.pathname
: 包含URL
中路径部分的一个DOMString
,开头有一个/
。location.search
: 包含URL
参数的一个DOMString
,开头有一个?
。location.hash
: 包含块标识符的DOMString
,开头有一个#
。location.origin
: 只读,包含页面来源的域名的标准形式DOMString
。location.ancestorOrigins
: 只读,返回结构是静态DOMStringList
,以相反的顺序包含与给定Location
对象关联的文档的所有祖先浏览上下文的来源,可以根据location.ancestorOrigins
来确定某个站点构架了iframe
文档,该属性目前尚在提案中。
方法
location.assign()
: 加载给定URL
的内容资源到这个Location
对象所关联的对象上,即用来加载一个新文档。location.reload()
: 重新加载来自当前URL
的资源,其有一个特殊的可选参数,类型为Boolean
,该参数为true
时会导致该方法引发的刷新一定会从服务器上加载数据,如果是false
或没有指定这个参数,浏览器可能从缓存当中加载页面。location.replace()
: 用给定的URL
替换掉当前的资源,与assign()
方法不同的是用replace()
替换的新页面不会被保存在会话的历史History
中,这意味着用户将不能用后退按钮转到该页面。location.toString()
: 返回一个DOMString
,包含整个URL
,它和读取location.href
的效果相同,但是用它是不能够修改location
的值的。
每日一题
https://github.com/WindrunnerMax/EveryDay
参考
https://developer.mozilla.org/zh-CN/docs/Web/API/Location