Как получить текущий URL перед событием popstate

Необходимо получить URL который был до того, как пользователь нажал на кнопку back в браузере. Я слушаю событие "popstate" но выходит что я работаю уже с "новой страницей" и url уже новый.

window.addEventListener ("popstate", function (e) {
    console.log(location.pathname.split("/").pop());
    console.log('Тут писать предыдущий url');
}

В итоге: консоль даёт мне новую концовку url.

Сделать так не вариант:

let endpath = location.pathname.split("/").pop();

Потому, что history.pushState вызывается на странице много раз. Думаю над вариантом собрать все посещённые "страницы" в массив и просто шагать по нему в обратном порядке. Но вдруг есть более лаконичное решение?


Ответы (2 шт):

Автор решения: Митя ТоДаСё

Так можно же запоминать текущий url и с которого пришли на стр, и сравнивать их с учётом get или без, как больше подходит... Или нет?

→ Ссылка
Автор решения: Владлен Вожжаев

Решение оказалось простое, решил передавать старую страницу при событииhistory.pushState

history.pushState({'page':currentLoc,'oldPage':endpath}, "Title", currentLoc);

Затем можно позвать с помощью

console.log(history.state.oldPage);
→ Ссылка