JavaScript location.hash URLのアンカー部分

概要

URLのアンカー部分を表す。URLが https://segakuin.com/index.html#HASH の場合、location.hashは#HASHとなる。

構文

location.hash

サンプル

<p>location.hash: <span id="hash"></span></p>

<script>
  document.getElementById("hash").innerHTML = location.hash
</script>

上記JavaScriptの実行結果を次に示す。

location.hash:

セキュリティ上の問題

location.hashの値をWebページに出力する場合、DOM based XSSの脆弱性がある。

前述のJavaScriptの場合、http://itref.fc2web.com/index.html#<b>bold</b>のようなURLを入力されると「<b>bold</b>」をHTML要素としてウェブページに出力してしまう。

location.hashの値をウェブページに出力するには、encodeURIComponent関数を使用するか、DOM操作用のメソッドやプロパティを使用する。