Location.pathname - パスを取得、変更する

投稿日: / 更新日:

JavaScriptの、Locationオブジェクトのpathnameは、パスを取得、変更するプロパティです。

説明

Locationオブジェクトのpathnameプロパティは、パスを含みます。フラグメント識別子(#section-1)やクエリ(?id=387)は含みません。

https://syncer.jp:443/index.html?id=387#section-1

また、pathnameプロパティに新しく値を設定することで現在のパスを変更、すなわち、ページ移動させることができます。指定する値はスラッシュ(/)から始めます。例えば、pathnameプロパティの値に/new.htmlを指定した挙動は次の通りです。

// パスを変更
window.location.pathname = "/new.html" ;
https://syncer.jp:443/new.html?id=387#section-1

パスを変更してページ移動した場合、パスの部分だけが変更されて、その他のフラグメント識別子やクエリ部分は引き継がれます。

サンプルコード

https://syncer.jp:443/index.html?id=387#section-1
// パスを取得 ( → "/index.html" )
var pathname = window.location.pathname ;
// パスを変更 ( → https://syncer.jp:443/new.html?id=387#section-1 )
window.location.pathname = "/new.html" ;

デモ

下記はsyncer-editor.com上のページです。window.location.pathnameを取得して表示します。パスの変更はボタンを押してから3秒後に実行します。URLがどのように変更されるのかを確認するには、お手数ですが、新しいウィンドウで開いてお試し下さい。

構文

string pathname = Location.pathname
Location.pathname = string newPathname

返り値

項目説明
pathname現在のURLのパス。

指定する値

項目説明
newPathname新しく設定したいパス。スラッシュ(/)から始めるサーバー相対パス。

関連項目

  • Location - ブラウザロケーションのオブジェクト。
  • Location.hash - フラグメント識別子(#〜)を取得、変更する。
  • Location.host - ホスト名とポートを取得、変更する。
  • Location.hostname - ホスト名を取得、変更する。
  • Location.href - 完全なURLを取得、変更する。
  • Location.pathname - パスを取得、変更する。
  • Location.port - ポート番号を取得、変更する。
  • Location.protocol - プロトコルを取得、変更する。
  • Location.search - クエリを取得、変更する。

外部リンク