Navigating with History API in JavaScript
The History API in JavaScript allows us to manipulate the browser history programmatically, providing a better user experience. Particularly useful in single-page applications (SPAs).
Here's a quick rundown:
// Push a new entry to the history stack
history.pushState(stateObject, title, url);
// Replace the current entry on the history stack
history.replaceState(stateObject, title, url);
// Moving backwards and forwards through the history stack
history.back(); // equivalent to 'Back' button
history.forward(); // equivalent to 'Forward' button
history.go(-1); // equivalent to history.back()
The stateObject
is a JavaScript object associated with the new history entry created by pushState()
or replaceState()
. The title
parameter is ignored in most browsers due to security issues. The url
parameter is optional and represents the new URL of the current entry.
Remember, manipulating the history can lead to unexpected navigation behavior, so use it wisely.
Happy coding!
Explore more articles
Keep experimenting and happy coding! You can find me at @samuellawrentz on X.