# How to get the current URL in JavaScript

> Learn how to get the current URL in JavaScript with window.location and location.href, plus handy properties like pathname, hostname, hash, and search.

Author: [Flavio Copes](https://flaviocopes.com/about/) | Published: 2018-10-01 | Topics: [JavaScript](https://flaviocopes.com/tags/js/) | Canonical: https://flaviocopes.com/how-to-get-current-url-javascript/

To get the current URL of the page you opened in the browser using [JavaScript](https://flaviocopes.com/javascript/) you can rely on the `location` property exposed by the browser on the `window` object:

```js
window.location
```

Since `window` is the global object in the browser, the property can be referenced as

```js
location
```

This is a [Location](https://developer.mozilla.org/en-US/docs/Web/API/Location) object which has many properties on its own:

![window.location](https://flaviocopes.com/images/how-to-get-current-url-javascript/window-location.png)

The current page URL is exposed in

```js
location.href
```

Other properties of `location` provide useful information:

| Code                | Description                                      |
| ------------------- | ------------------------------------------------ |
| `location.hostname` | the host name                                    |
| `location.origin`   | the origin                                       |
| `location.hash`     | the hash, the part that follow the hash # symbol |
| `location.pathname` | the path                                         |
| `location.port`     | the port                                         |
| `location.protocol` | the protocol                                     |
| `location.search`   | the query string                                 |

If you're not sure which property maps to which part of a URL, I built a free [URL parser tool](https://flaviocopes.com/tools/url-parser/) that labels every part of any URL you paste in.
