Location.port - ポート番号を取得、変更する
投稿日: / 更新日:
JavaScriptの、Locationオブジェクトのport
は、ポート番号を取得、変更するプロパティです。
説明
Locationオブジェクトのportプロパティは、ポート番号を含みます。取得できるのは、443
の部分です。サーバーの設定などでポート番号が非表示(URLアドレス欄に表示されない)の場合は、空の文字列が返ります。
https://syncer.jp:443/index.html#section-1
portプロパティに新しく値を設定することで現在のポート番号を変更、すなわち、ページ移動させることができます。指定する値にコロン(:
)は含めません。
// ポート番号を変更
window.location.port = "80" ;
https://syncer.jp:80/index.html#section-1
ポート番号を変更してページ移動した場合、ポート番号の部分だけが変更されて、その他のフラグメント識別子やクエリ部分は引き継がれます。実行する機会はほとんどないでしょうが、こういった仕組みになっています。
サンプルコード
https://syncer.jp:443/index.html#section-1
// ポート番号を取得 ( → "443" )
var port = window.location.port ;
// ポート番号を変更 ( → https://syncer.jp:80/index.html#section-1 )
window.location.port = "80" ;
デモ
下記はsyncer-editor.com
上のページです。window.location.port
を取得して表示します。ポート番号は非表示なので、空の文字列が取得され、何も表示されません。変更は、ボタンを押してから3秒後に実行されます。httpsのプロトコルは変更しないまま、ポート番号だけをhttps(443
)からhttp(80
)に変更するので、「表示できない」という警告が表示されるはずです。
構文
string port = Location.port
Location.port = string newPort
返り値
項目 | 説明 |
---|---|
port | 現在のURLのポート番号。 |
指定する値
項目 | 説明 |
---|---|
newPort | 新しく設定したいポート番号。コロン(: )は含まない。 |
関連項目
- Location - ブラウザロケーションのオブジェクト。
- Location.hash - フラグメント識別子(#〜)を取得、変更する。
- Location.host - ホスト名とポートを取得、変更する。
- Location.hostname - ホスト名を取得、変更する。
- Location.href - 完全なURLを取得、変更する。
- Location.pathname - パスを取得、変更する。
- Location.port - ポート番号を取得、変更する。
- Location.protocol - プロトコルを取得、変更する。
- Location.search - クエリを取得、変更する。
外部リンク
- HTML Living Standard - WHATWGによる仕様書。