【JavaScript】のwindow.historyの詳細解説

【JavaScript】のwindow.historyの詳細解説

JavaScriptでのwindow.historyの詳細解説

window.historyとは

window.historyは、ブラウザの「セッション履歴」にアクセスするためのオブジェクトです。セッション履歴とは、現在のブラウザタブでユーザーが訪問したページの履歴を指します。このオブジェクトを利用すると、プログラムから履歴を操作したり、ページを遷移させたりすることが可能です。

主な用途:

  • ユーザーを前のページに戻す
  • 次のページに進ませる
  • 指定した数だけ履歴を移動する
  • 現在の履歴の長さを取得する

window.history.length

window.history.lengthは、現在のセッション履歴に含まれるエントリの数を取得します。このプロパティは読み取り専用で、履歴の中で何ページの記録があるかを知るのに役立ちます。

例:

console.log(window.history.length);

例えば、3つのページを順に訪れた後、このコードを実行すると、3と表示されます。

window.history.back()

window.history.back()は、ユーザーをセッション履歴内の1つ前のページに戻します。ブラウザの「戻る」ボタンと同じ動作をします。

例:

window.history.back();

このコードを実行すると、1つ前のページに戻ります。

注意点として、セッション履歴に前のページが存在しない場合、このメソッドは何も起こしません。

window.history.forward()

window.history.forward()は、セッション履歴内の次のページに移動します。ブラウザの「進む」ボタンと同じ動作をします。

例:

window.history.forward();

このコードを実行すると、次のページに進みます。

このメソッドも、セッション履歴に次のページが存在しない場合は何も起こりません。

window.history.go(n)

window.history.go(n)は、履歴を指定した数だけ進む、または戻るメソッドです。nが正の数の場合は進み、負の数の場合は戻ります。

例:

window.history.go(-1); // 1つ前のページに戻る
window.history.go(2);  // 2つ次のページに進む

n0を指定すると、現在のページがリロードされます。

window.history.go(0); // 現在のページを再読み込み

nの値が履歴の範囲外の場合、このメソッドは何も起こしません。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です