HTML DOMのLocation hostnameプロパティとは?構文と使い方を実例で解説
JavaScriptのLocationオブジェクトが持つhostnameプロパティは、現在のURLからホスト名(ドメイン名)を取得、または新しいホスト名を設定するために使用されます。なお、hostnameプロパティにはポート番号は含まれません。ポート番号も含めて取得したい場合は、hostプロパティを使用してください。
構文
hostnameプロパティの基本的な構文は以下の通りです。
ホスト名を取得する場合
location.hostname
ホスト名を設定する場合
location.hostname = hostname
使用例
ここでは、Location hostnameプロパティを使って現在のページのホスト名を取得し、画面に表示する簡単なサンプルを紹介します。ボタンをクリックすると、location.hostnameの値がdiv要素に出力されます。
<!DOCTYPE html>
<html>
<head>
<title>Location hostname</title>
<style>
form {
width:70%;
margin: 0 auto;
text-align: center;
}
* {
padding: 2px;
margin:5px;
}
input[type="button"] {
border-radius: 10px;
}
</style>
</head>
<body>
<form>
<fieldset>
<legend>Location-hostname</legend>
<label for="urlSelect">Current URL:</label>
<input type="url" size="27" id="urlSelect" value="https://www.example.com:2544">
<input type="button" onclick="getHostname()" value="Get Hostname">
<div id="divDisplay"></div>
</fieldset>
</form>
<script>
var divDisplay = document.getElementById("divDisplay");
var urlSelect = document.getElementById("urlSelect");
function getHostname(){
divDisplay.textContent = 'Hostname: '+location.hostname;
}
</script>
</body>
</html>
実行結果
上記のコードをブラウザで実行すると、次のように表示されます。
「Get Hostname」ボタンをクリックする前

「Get Hostname」ボタンをクリックした後

ポイントまとめ
- hostnameプロパティは読み取り・書き込みの両方が可能です。
- 返される値にはポート番号が含まれないため、URLに「https://www.example.com:2544」のようなポート番号があっても「www.example.com」のみが取得されます。
- 値を設定した場合は、そのホスト名を基準にページが移動(リロード)されます。
- ポート番号まで含めて取得したい場合はhostプロパティ、URL全体が必要な場合はhrefプロパティを使用しましょう。
-
HTML DOMのLocation searchプロパティとは?URLクエリ文字列の取得・設定方法を解説
JavaScriptのLocationオブジェクトにおけるsearchプロパティは、URLに含まれるクエリ文字列(「?」以降の部分)を取得または設定するためのプロパティです。例えば、「https://example.com/page?name=taro&id=123」というURLの場合、searchプロパティは「?name=taro&id=123」という文字列を返します。 構文 searchプロパティの基本的な構文は以下のとおりです。 値の取得 location.search 値の設定 location.search = searchString 使用例 ここでは、実際にsearchプ
-
HTML DOMアンカーのhostnameプロパティの使い方を解説
HTML DOMのAnchor hostnameプロパティは、リンク先URLのうちホスト名(ドメイン名)のみを取得・設定するためのプロパティです。よく似たプロパティである「host」との違いは、ポート番号を含むかどうかという点にあります。host:ホスト名+ポート番号を返す(例:www.demo.com:6064)hostname:ホスト名のみを返す(例:www.demo.com)hostnameプロパティを設定する構文hostnameプロパティに値を設定する場合は、以下のように記述します。anchorObj.hostname = hostname上記の「hostname」には、設定したいUR