78 lines
3.1 KiB
Markdown
78 lines
3.1 KiB
Markdown
---
|
|
title: Location Object
|
|
---
|
|
## Location Object
|
|
|
|
The "Location" object provides an API (Application Programming Interface) which enables retrieval of a URL, setting of a URL, or access to parts of a URL. It is already implemented for you by default on the Window and Document objects.
|
|
Note: There is no public standard that applies to the location object, but all major browsers support it.
|
|
|
|
### Location Object Properties
|
|
|
|
| Property | Description |
|
|
|----------|---------------------------------------------------------|
|
|
| hash | Sets or returns the anchor part (#) of a URL |
|
|
| host | Sets or returns the hostname and port number of a URL |
|
|
| hostname | Sets or returns the hostname of a URL |
|
|
| href | Sets or returns the entire URL |
|
|
| origin | Returns the protocol, hostname and port number of a URL |
|
|
| pathname | Sets or returns the path name of a URL |
|
|
| port | Sets or returns the port number of a URL |
|
|
| protocol | Sets or returns the protocol of a URL |
|
|
| search | Sets or returns the querystring part of a URL |
|
|
|
|
### Location Object Methods
|
|
|
|
| Method | Description |
|
|
|-----------|----------------------------------------------|
|
|
| assign() | Loads a new document |
|
|
| reload() | Reloads the current document |
|
|
| replace() | Replaces the current document with a new one |
|
|
|
|
### Examples
|
|
|
|
The location objects are accessible by:
|
|
|
|
```javascript
|
|
console.log(window.location);
|
|
// > https://guide.freecodecamp.org/javascript/location-object
|
|
console.log(document.location);
|
|
// > https://guide.freecodecamp.org/javascript/location-object
|
|
```
|
|
|
|
You can also set the Location object of an HTML `<a>` element or an HTML `<area>` element programmatically with JavaScript.
|
|
|
|
```javascript
|
|
var anchor = document.createElement('a');
|
|
anchor.url = "https://guide.freecodecamp.org/javascript/location-object";
|
|
```
|
|
|
|
Once you have an object with a URL set (including the window), the Location API allows you to access parts of the URL.
|
|
|
|
```javascript
|
|
console.log(anchor.protocol);
|
|
// > https:
|
|
console.log(anchor.host);
|
|
// > guide.freecodecamp.org (includes port number if applicable. Example: guide.freecodecamp.org:8080)
|
|
```
|
|
|
|
Other properties of "Location" you can access are:
|
|
|
|
- `anchor.hostname` - *guide.freecodecamp.org*
|
|
- `anchor.port` - *8080*
|
|
- `anchor.pathname` - */javascript/location-object*
|
|
- `anchor.origin` - *https://developer.mozilla.org*
|
|
|
|
If your URL contains parameters or hashes you can access them like so:
|
|
|
|
```javascript
|
|
// If your URL is https://guide.freecodecamp.org/javascript?param=location#other-properties
|
|
console.log(window.location.search);
|
|
// > "?param=location"
|
|
console.log(document.location.hash);
|
|
// > "#other-properties"
|
|
```
|
|
|
|
#### More Information:
|
|
|
|
<a href='https://www.w3schools.com/jsref/obj_location.asp' target='_blank' rel='nofollow'>W3C - Location Object</a>
|
|
[Location](https://developer.mozilla.org/en-US/docs/Web/API/Location) |