{{APIRef}}
The Location
interface represents the location of the object it is linked to. Changes done on it are reflected on the object it relates to. Both the {{domxref("Document")}} and {{domxref("Window")}} interface have such a linked Location
, accessible via {{domxref("Document.location")}} and {{domxref("Window.location")}} respectively.
Properties
The Location
interface doesn't inherit any property, but implements those from {{domxref("URLUtils")}}.
- {{domxref("Location.href")}}
- Is a {{domxref("DOMString")}} containing the whole URL.
- {{domxref("Location.protocol")}}
- Is a {{domxref("DOMString")}} containing the protocol scheme of the URL, including the final
':'
. - {{domxref("Location.host")}}
- Is a {{domxref("DOMString")}} containing the host, that is the hostname, a
':'
, and the port of the URL. - {{domxref("Location.hostname")}}
- Is a {{domxref("DOMString")}} containing the domain of the URL.
- {{domxref("Location.port")}}
- Is a {{domxref("DOMString")}} containing the port number of the URL.
- {{domxref("Location.pathname")}}
- Is a {{domxref("DOMString")}} containing an initial
'/'
followed by the path of the URL. - {{domxref("Location.search")}}
- Is a {{domxref("DOMString")}} containing a
'?'
followed by the parameters of the URL. Also known as "querystring". - {{domxref("Location.hash")}}
- Is a {{domxref("DOMString")}} containing a
'#'
followed by the fragment identifier of the URL. - {{domxref("Location.username")}}
- Is a {{domxref("DOMString")}} containing the username specified before the domain name.
- {{domxref("Location.password")}}
- Is a {{domxref("DOMString")}} containing the password specified before the domain name.
- {{domxref("Location.origin")}} {{readOnlyInline}}
- Returns a {{domxref("DOMString")}} containing the canonical form of the origin of the specific location.
Methods
The Location
interface doesn't inherit any method, but implements those from {{domxref("URLUtils")}}.
- {{domxref("Location.assign()")}}
- Loads the resource at the URL provided in parameter.
- {{domxref("Location.reload()")}}
- Reloads the resource from the current URL. Its optional unique parameter is a {{domxref("Boolean")}}, which, when it is
true
, causes the page to always be reloaded from the server. If it isfalse
or not specified, the browser may reload the page from its cache. - {{domxref("Location.replace()")}}
- Replaces the current resource with the one at the provided URL. The difference from the
assign()
method is that after usingreplace()
the current page will not be saved in session {{domxref("History")}}, meaning the user won't be able to use the back button to navigate to it. - {{domxref("Location.toString()")}}
- Returns a {{domxref("DOMString")}} containing the whole URL. It is a synonym for {{domxref("URLUtils.href")}}, though it can't be used to modify the value.
Examples
// Create anchor element and use href property for the purpose of this example // A more correct alternative is to browse to the URL and use document.location or window.location var url = document.createElement('a'); url.href = 'https://developer.mozilla.org/en-US/search?q=URL#search-results-close-container'; console.log(url.href); // https://developer.mozilla.org/en-US/search?q=URL#search-results-close-container console.log(url.protocol); // https: console.log(url.host); // developer.mozilla.org console.log(url.hostname); // developer.mozilla.org console.log(url.port); // (blank - https assumes port 443) console.log(url.pathname); // /en-US/search console.log(url.search); // ?q=URL console.log(url.hash); // #search-results-close-container console.log(url.origin); // https://developer.mozilla.org
Specifications
Specification | Status | Comment |
---|---|---|
{{SpecName('HTML WHATWG', "history.html#the-location-interface", "Location")}} | {{Spec2('HTML WHATWG')}} | No change from {{SpecName("HTML5 W3C")}}. |
{{SpecName('HTML5 W3C', "browsers.html#the-location-interface", "Location")}} | {{Spec2('HTML5 W3C')}} | Initial definition. |
Browser compatibility
{{CompatibilityTable}}
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|
Basic support | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} |
origin on Windows.location |
{{CompatUnknown}} | {{CompatGeckoDesktop("21")}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
origin on all location objects (but on Workers, that use {{domxref("WorkerLocation")}} |
{{CompatUnknown}} | {{CompatGeckoDesktop("26")}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
username and password |
{{CompatUnknown}} | {{CompatGeckoDesktop("26")}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
Feature | Android | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|
Basic support | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} |
origin on Windows.location |
{{CompatUnknown}} | {{CompatGeckoMobile("21")}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
origin on all location objects (but on Workers, that use {{domxref("WorkerLocation")}}) |
{{CompatUnknown}} | {{CompatGeckoMobile("26")}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
username and password |
{{CompatUnknown}} | {{CompatGeckoMobile("26")}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
See also
- Two methods creating such an object: {{domxref("Window.location")}} and {{domxref("Document.location")}}.