files/en-us/web/api/history/state/index.md
{{APIRef("History API")}}
The state read-only property of the {{DOMxRef("History")}} interface
returns a value representing the state at the top of the history stack. This is
a way to look at the state without having to wait for a {{domxref("Window/popstate_event", "popstate")}} event.
The state at the top of the history stack. The value is null until the
{{domxref("History.pushState","pushState()")}} or
{{domxref("History.replaceState","replaceState()")}} method is used.
The code below logs the value of history.state before using the
{{domxref("History.pushState","pushState()")}} method to push a value to the history.
The next line logs the value to the console again, showing that
history.state now has a value.
// Should be null because we haven't modified the history stack yet
console.log("History.state before pushState: ", history.state);
// Now push something on the stack
history.pushState({ name: "Example" }, "pushState example", "page3.html");
// Now state has a value.
console.log("History.state after pushState: ", history.state);
{{Specifications}}
{{Compat}}