Location

Location インターフェイスは、関連付けられたオブジェクトの場所 (URL) を表します。 Location に対して変更が行われると、関連するオブジェクトに反映されます。 Document インターフェイスおよび Window インターフェイスにはこのような関連付けられた Location があり、それぞれ Document.location および Window.location でアクセスできます。

プロパティ

Location.href
URL 全体を収めた USVString を返す文字列化です。この値を変更すると、関連付けられた文書が新しいページへ移動します。この値は、関連付けられた文書のものとは異なるオリジンから設定できます。
Location.protocol
末尾の ':' を含む、URL のプロトコルスキームを収めた USVString です。
Location.host
URL のホスト (すなわち hostname、コロン (':')、port) を収めた USVString です。
Location.hostname
URL のドメインを収めた USVString です。
Location.port
URL のポート番号を収めた USVString です。
Location.pathname
URL のパス部分を、先頭の '/' を含めて収めた USVString です。
Location.search
URL のうち、'?' とそれに続くパラメーターや "クエリー文字列" を収めた USVString です。現代のブラウザーは、クエリー文字列からパラメーターを容易に解析するための URLSearchParamsURL.searchParams を提供しています。
Location.hash
URL のうち、'#' とそれに続くフラグメント識別子を収めた USVString です。
Location.username
ドメイン名の前に指定されたユーザー名を収めた USVString です。
Location.password
ドメイン名の前に指定されたパスワードを収めた USVString です。
Location.origin 読取専用
特定の location のオリジンの標準形を収めた USVString です。

メソッド

Location.assign()
引数で指定した URL のリソースを読み込みます。
Location.reload()
現在の URL のリソースを再読み込みします。省略可能な唯一の引数は Boolean 値で、true であれば常にサーバーからページを再読み込みします。false を指定するか値を指定しない場合は、ブラウザーがキャッシュからページを再読み込みする可能性があります。
Location.replace()
現在のリソースを、指定した URL のリソースで置き換えます。assign() メソッドとの違いは、replace() を使用した後は現在のページがセッションの History に保存されないことであり、ユーザーは 戻る ボタンを使用して移動することができません。
Location.toString()
URL 全体を収めた USVString を返します。これは HTMLHyperlinkElementUtils.href と同義ですが、こちらは値を変更するために使用できません。

// この例のためにアンカー要素を生成して、href プロパティを使用します。
// より適切な代替手段は、URL を見て document.location または window.location を使用することです。
var url = document.createElement('a');
url.href = 'https://developer.mozilla.org:8080/en-US/search?q=URL#search-results-close-container';
console.log(url.href);      // https://developer.mozilla.org:8080/en-US/search?q=URL#search-results-close-container
console.log(url.protocol);  // https:
console.log(url.host);      // developer.mozilla.org:8080
console.log(url.hostname);  // developer.mozilla.org
console.log(url.port);      // 8080
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:8080

仕様書

仕様書 状態 備考
HTML Living Standard
Location の定義
現行の標準 HTML5 から変更なし。
HTML5
Location の定義
勧告 初回定義

ブラウザーの互換性

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung Internet
LocationChrome 完全対応 1Edge 完全対応 12Firefox 完全対応 1IE 完全対応 3Opera 完全対応 3Safari 完全対応 1WebView Android 完全対応 1Chrome Android 完全対応 18Firefox Android 完全対応 4Opera Android 完全対応 10.1Safari iOS 完全対応 1Samsung Internet Android 完全対応 1.0
ancestorOriginsChrome 完全対応 20Edge 完全対応 79Firefox 未対応 なしIE 未対応 なしOpera 完全対応 15Safari 完全対応 6WebView Android 完全対応 4.4Chrome Android 完全対応 25Firefox Android 未対応 なしOpera Android 完全対応 14Safari iOS 完全対応 6Samsung Internet Android 完全対応 1.5
assignChrome 完全対応 1Edge 完全対応 12Firefox 完全対応 1IE 完全対応 5.5Opera 完全対応 3Safari 完全対応 3WebView Android 完全対応 1Chrome Android 完全対応 18Firefox Android 完全対応 4Opera Android 完全対応 10.1Safari iOS 完全対応 1Samsung Internet Android 完全対応 1.0
hashChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 22IE 完全対応 ありOpera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありFirefox Android 完全対応 22Opera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android 完全対応 あり
hostChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 22IE 完全対応 ありOpera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありFirefox Android 完全対応 22Opera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android 完全対応 あり
hostnameChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 22IE 完全対応 ありOpera 未対応 なしSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありFirefox Android 完全対応 22Opera Android 未対応 なしSafari iOS 完全対応 ありSamsung Internet Android 完全対応 あり
hrefChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 22IE 完全対応 ありOpera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありFirefox Android 完全対応 22Opera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android 完全対応 あり
originChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 26
補足
完全対応 26
補足
補足 Before Firefox 49, results for URL using the blob scheme incorrectly returned null.
IE 完全対応 11
補足
完全対応 11
補足
補足 Intranet sites are set to Compatibility View, which will emulate IE7 and omit window.location.origin.
Opera 完全対応 10Safari 完全対応 あり
補足
完全対応 あり
補足
補足 According to Apple's documentation, window.location.origin is supported since Safari 10 (both desktop and mobile), but the feature seems to be present in some older versions as well. Because of this, the exact versions supporting this feature cannot be determined reliably.
WebView Android 完全対応 ありChrome Android 完全対応 ありFirefox Android 完全対応 26
補足
完全対応 26
補足
補足 Before Firefox 49, results for URL using the blob scheme incorrectly returned null.
Opera Android ? Safari iOS 完全対応 5Samsung Internet Android 完全対応 あり
password
非推奨非標準
Chrome 未対応 なしEdge 未対応 なしFirefox 未対応 26 — 45IE 未対応 なしOpera 未対応 なしSafari 未対応 なしWebView Android 未対応 なしChrome Android 未対応 なしFirefox Android 未対応 26 — 45Opera Android 未対応 なしSafari iOS 未対応 なしSamsung Internet Android 未対応 なし
pathnameChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 22
補足
完全対応 22
補足
補足 Before Firefox 53, the pathname property returned wrong parts of the URL. For example, for a URL of http://z.com/x?a=true&b=false, pathname would return "/x?a=true&b=false" rather than "/x".
IE 完全対応 あり
補足
完全対応 あり
補足
補足 Internet Explorer does not provide the leading slash character in the pathname (docs/Web/API/Location instead of /docs/Web/API/Location).
Opera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありFirefox Android 完全対応 22
補足
完全対応 22
補足
補足 Before Firefox 53, the pathname property returned wrong parts of the URL. For example, for a URL of http://z.com/x?a=true&b=false, pathname would return "/x?a=true&b=false" rather than "/x".
Opera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android 完全対応 あり
portChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 22IE 完全対応 ありOpera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありFirefox Android 完全対応 22Opera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android 完全対応 あり
protocolChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 22IE 完全対応 ありOpera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありFirefox Android 完全対応 22Opera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android 完全対応 あり
reloadChrome 完全対応 1Edge 完全対応 12
補足
完全対応 12
補足
補足 In EdgeHTML versions of Edge, if a page added to Trusted Sites contains a cross-origin iframe, then calling reload() from within the iframe reloads the trusted page (in other words, the top page reloads, not the iframe). This behavior was fixed in Edge 79.
Firefox 完全対応 1IE 完全対応 5.5
補足
完全対応 5.5
補足
補足 If a page added to Trusted Sites contains a cross-origin iframe, then calling reload() from within the iframe reloads the trusted page (in other words, the top page reloads, not the iframe).
Opera 完全対応 3Safari 完全対応 1WebView Android 完全対応 1Chrome Android 完全対応 18Firefox Android 完全対応 4Opera Android 完全対応 10.1Safari iOS 完全対応 1Samsung Internet Android 完全対応 1.0
replaceChrome 完全対応 1Edge 完全対応 12Firefox 完全対応 1IE 完全対応 5.5Opera 完全対応 3Safari 完全対応 1WebView Android 完全対応 1Chrome Android 完全対応 18Firefox Android 完全対応 4Opera Android 完全対応 10.1Safari iOS 完全対応 1Samsung Internet Android 完全対応 1.0
searchChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 22
補足
完全対応 22
補足
補足 Before Firefox 53, the search property returned wrong parts of the URL. For example, for a URL of http://z.com/x?a=true&b=false, search would return "", rather than "?a=true&b=false".
IE 完全対応 ありOpera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありFirefox Android 完全対応 22
補足
完全対応 22
補足
補足 Before Firefox 53, the search property returned wrong parts of the URL. For example, for a URL of http://z.com/x?a=true&b=false, search would return "", rather than "?a=true&b=false".
Opera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android 完全対応 あり
toStringChrome 完全対応 52Edge 完全対応 12Firefox 完全対応 22IE 完全対応 11
補足
完全対応 11
補足
補足 Intranet sites are set to Compatibility View, which will emulate IE7 and omit window.location.toString.
Opera ? Safari ? WebView Android 完全対応 52Chrome Android 完全対応 52Firefox Android 完全対応 22Opera Android ? Safari iOS ? Samsung Internet Android 完全対応 6.0
username
非推奨非標準
Chrome 未対応 なしEdge 未対応 なしFirefox 未対応 26 — 45IE 未対応 なしOpera 未対応 なしSafari 未対応 なしWebView Android 未対応 なしChrome Android 未対応 なしFirefox Android 未対応 26 — 45Opera Android 未対応 なしSafari iOS 未対応 なしSamsung Internet Android 未対応 なし

凡例

完全対応  
完全対応
未対応  
未対応
実装状況不明  
実装状況不明
非標準。ブラウザー間の互換性が低い可能性があります。
非標準。ブラウザー間の互換性が低い可能性があります。
非推奨。新しいウェブサイトでは使用しないでください。
非推奨。新しいウェブサイトでは使用しないでください。
実装ノートを参照してください。
実装ノートを参照してください。

関連情報