Back to Content

Navigation: entries() method

files/en-us/web/api/navigation/entries/index.md

latest1.3 KB
Original Source

{{APIRef("Navigation API")}}

The entries() method of the {{domxref("Navigation")}} interface returns an array of {{domxref("NavigationHistoryEntry")}} objects representing all existing history entries.

Syntax

js-nolint
entries()

Parameters

None.

Return value

An array of {{domxref("NavigationHistoryEntry")}} objects.

Exceptions

None.

Examples

Return the number of entries in the history

js
let numOfEntries = navigation.entries().length - 1;

A smart back button

A page-supplied "back" button can take you back, even after reload, by inspecting the previous history entries:

js
backButtonEl.addEventListener("click", () => {
  if (
    navigation.entries()[navigation.currentEntry.index - 1]?.url ===
    "/product-listing"
  ) {
    navigation.back();
  } else {
    // If the user arrived here in some other way
    // e.g. by typing the URL directly:
    navigation.navigate("/product-listing", { history: "replace" });
  }
});

Specifications

{{Specifications}}

Browser compatibility

{{Compat}}

See also