Javascript Hash bang
How get parsing hash, params
const url = `/home/1#about?param1="122"¶m2="333"` const [hash, query] = url.split( '#')[1].split('?') const params = Object.fromEntries(new URLSearchParams(query)) console.log("splited hash : " + hash) console.log("splited params : " + params)
Result Log
splited hash : about splited params : {param1: '"122"', param2: '"333"'}
How to change url
const new_url = new URL(location); new_url.searchParams.set("foo", "bar"); history.pushState({}, "", "#a?asdasd=111"); // const state = { page_id: 1, user_id: 5 }; // const new_url = "hello-world.html"; // history.pushState(state, "", "#aaaa");
Reference
https://developer.mozilla.org/en-US/docs/Web/API/History/pushState#javascript
https://developers.google.com/search/docs/crawling-indexing/javascript/javascript-seo-basics?csw=1
https://developer.mozilla.org/en-US/docs/Web/API/Window/hashchange_event