window.location会返回一个Location的实例对象(只读,其会链接到当前对象的位置URL上),其包含着有关当前文档的位置信息。
location对象除了会挂载到window对象上,还可以通过document对象(window.document)访问:
window.location === window.document.location; // true window.document.location instanceof Location; // true
虽然Location对象是只读的,但我们仍可以对它赋值(DOMString):
window.location = 'http(s)://xxx'; //等价于 window.location.href = 'http(s)://xxx';
location对象的属性:
1. href
// 返回包含整个URL的DOMString window.location.href;
/** * * window.location.href 的返回结果的信息中包括以下几部分: * 1. window.location.protocol * 2. window.location.hostname * 3. window.location.port * 4. window.location.pathname * 5. window.location.hash * 6. window.location.search * 注:不等于各部分的直接拼接 */
2. host
// 域名(+port ?) window.location.host; // 包含: window.location.hostname 和 window.location.port
3. protocal
// HTTP 协议 window.location.protocol;
3. hostname
// URL域名的DOMString window.location.hostname;
4. port
// 端口号 window.location.port;
5. pathname
// URL的路径部分 window.location.pathname;
6. search
// URL参数 window.location.search;
7. hash
// 块标识符 window.location.hash;
8. origin
// 页面来源(协议+主机地址,即protocol + host) window.location.origin;