window.location

导读 `window.location` 是 JavaScript 中与浏览器的当前 URL 相关的一个对象属性。它提供了一个访问和修改当前浏览器窗口的 URL 的方式...

`window.location` 是 JavaScript 中与浏览器的当前 URL 相关的一个对象属性。它提供了一个访问和修改当前浏览器窗口的 URL 的方式。这个对象包含了关于当前 URL 的各种信息,如协议(http 或 https)、主机名、路径、查询字符串等。同时,它也允许你对这些属性进行修改以重定向浏览器到新的 URL。

以下是 `window.location` 的一些重要属性和方法:

### 属性:

* `protocol`:返回当前 URL 的协议(例如 `http:` 或 `https:`)。

* `hostname`:返回当前 URL 的主机名(例如 `www.example.com`)。

* `port`:返回当前 URL 的端口号(如果有的话)。对于标准的 HTTP 和 HTTPS,这个属性通常不会返回任何值,因为这些协议使用标准的端口号(通常是 80 或 443)。

* `pathname`:返回当前 URL 的路径部分(例如 `/page/`)。

* `search`:返回查询字符串部分(包括问号),例如 `?param=value`。

* `hash`:返回 URL 的锚点部分(包括 `#`),例如 `#section`。

### 方法:

* `assign(URL)`:加载新的文档到当前窗口。等同于点击一个指向该 URL 的链接。

* `reload(forceReload)`:刷新当前页面。当传入参数 `true` 时,它会从服务器上重新加载页面;否则,如果页面已经在缓存中,则可能只从缓存中加载。

示例:

假设当前的 URL 是 `https://www.example.com/page/?param=value#section`,你可以通过以下方式访问这些属性:

```javascript

console.log(window.location.protocol); // 输出 "https:"

console.log(window.location.hostname); // 输出 "www.example.com"

console.log(window.location.pathname); // 输出 "/page/"

console.log(window.location.search); // 输出 "?param=value"

console.log(window.location.hash); // 输出 "#section"

```

你也可以修改这些属性来改变 URL 并导航到新的页面或部分。例如,通过以下代码可以将用户重定向到另一个页面:

```javascript

window.location.assign('https://www.another-example.com');

```

请注意,直接修改这些属性可能会引发浏览器行为或触发网络请求。在修改它们时要谨慎处理潜在的安全和用户体验问题。

版权声明:本文由用户上传,如有侵权请联系删除!