JavaScriptのwindow.historyオブジェクトとは?役割と使い方を解説
window.historyオブジェクトとは
JavaScriptのwindow.historyオブジェクトは、ブラウザのセッション履歴(閲覧履歴)にアクセスし、前のページや次のページへ移動するために使用されます。このオブジェクトには、ユーザーが現在のセッションで訪れたURLの履歴が保存されており、履歴を操作するための便利なメソッドが用意されています。
主なメソッド
- history.back() - 履歴上の1つ前のURLへ戻ります。ブラウザの「戻る」ボタンと同じ動作です。
- history.forward() - 履歴上の1つ先のURLへ進みます。ブラウザの「進む」ボタンと同じ動作です。
- history.go(n) - 指定した数だけ履歴を前後に移動します。例えば
history.go(-2)は2つ前のページへ、history.go(0)は現在のページを再読み込みします。
サンプルコード
以下のコードを実行して、window.historyオブジェクトの基本的な使い方を確認してみましょう。
<!DOCTYPE html>
<html>
<body>
<script>
function backPage() {
window.history.back();
}
function nextPage() {
window.history.forward();
}
</script>
<input type="button" value="前のページへ戻る" onclick="backPage()">
<input type="button" value="次のページへ進む" onclick="nextPage()">
</body>
</html>
このサンプルでは、「前のページへ戻る」ボタンをクリックすると history.back() が呼び出されて前のURLへ移動し、「次のページへ進む」ボタンをクリックすると history.forward() によって次のURLへ進みます。
補足:履歴の長さを取得する
window.history.length プロパティを使うと、現在のセッションで訪れたページ数(履歴エントリの数)を取得できます。
console.log(window.history.length); // 例: 5
なお、セキュリティ上の理由により、履歴内の実際のURLを取得することはできません。window.historyオブジェクトで直接操作できるのは、履歴をたどったページ間の移動のみとなっています。
-
JavaScriptのscreenXマウスイベントとは?役割と使い方を実例で解説
マウスイベントが発生したとき、screenXプロパティは、画面(スクリーン)の左上を基準としたマウスポインタのX座標(水平方向の位置)をピクセル単位で返します。 screenXとscreenYの基本的な役割 イベントオブジェクトが持つscreenXは水平方向(X座標)、screenYは垂直方向(Y座標)を表します。この2つはブラウザウィンドウやWebページではなく、ユーザーの物理的な画面全体を基準にした座標を返す点が大きな特徴です。 似た用途の座標プロパティと比較すると、違いがより明確になります。 screenX / screenY:モニター画面全体を基準とした座標 clientX / cl
-
JavaScriptのparseFloat()メソッドとは?役割と使い方をわかりやすく解説
JavaScriptのparseFloat()メソッドは、文字列を解析(パース)して浮動小数点数を返すためのグローバル関数です。文字列の先頭から数値として読み取れる部分を変換し、数値として解釈できない文字に到達した時点で解析を終了します。 parseFloat()メソッドの主な特徴 文字列の先頭から数値の解析を開始する 先頭にある空白(ホワイトスペース)は無視される 数値として解釈できる部分のみが変換される 解析できない場合は NaN(Not a Number)を返す 使用例 以下のコードを実行して、JavaScriptにおけるparseFloat()メソッドの実際の動作を確認してみま