Объект истории: History в JavaScript

В этом руководстве вы узнаете, как получить доступ к истории сеансов браузера с помощью объекта history JavaScript. Когда вы запускаете веб-браузер и открываете страницу, веб-браузер создает новую запись в своем стеке истории.

Если вы переходите на другую веб-страницу, браузер также создает новую запись в стеке истории.

Стек истории хранит текущую страницу и предыдущие страницы, которые вы посетили.

Чтобы управлять стеком истории, вы используете объект history, который является свойством объекта window :

window.history

Из соображений безопасности невозможно запросить страницы, которые посетил пользователь. Однако вы можете использовать объект history для навигации вперед и назад, не зная точного URL-адреса.

Использование

Объект history предоставляет три метода для навигации между страницами в стеке истории:

  • back()
  • forward()
  • go()

Двигаться назад

Чтобы двигаться назад по истории, вы используете метод back() :

window.history.back();

Или же

history.back();

Это похоже на то, как если бы вы нажали кнопку «Назад» на панели инструментов веб-браузера.

Двигаться вперед

Точно так же вы можете двигаться вперед, используя метод forward() :

history.forward();

Это работает так же, как когда вы нажимаете кнопку «Вперед».

Перейти к определенному URL-адресу в истории

Чтобы перейти к определенному URL-адресу в стеке истории, вы используете метод go(). Метод go() принимает целое число, представляющее позицию относительно текущей страницы. Текущая позиция страницы равна 0.

Например, чтобы двигаться назад, вы используете:

history.go(-1);

Это похоже на метод back().

Чтобы переместиться вперед на страницу, вы просто вызываете:

history.go(1)

Чтобы обновить текущую страницу, вы либо передаете 0, либо не передаете аргумент методу go() :

history.go(0);
history.go();

Чтобы определить количество URL-адресов в стеке истории, вы используете свойство length :

history.length

Заключение

  • Объект window.history в JavaScript позволяет вам получить доступ к стеку истории браузера.
  • Чтобы перейти к URL-адресу в истории, вы используете методы back(), forward() и go().
  • history.length возвращает количество URL-адресов в стеке истории.
Рейтинг
( Пока оценок нет )
Александр Русаков / автор статьи
Программист, разработчик, 12 лет опыта работы в крупных компаниях. Быстро освоил typescript, делюсь своими знаниями на страницах этого сайта.
Загрузка ...
JavaScript и TypeScript