history.pushState(state, unused)
history.pushState(state, unused, url)

// 또는
window.history.pushState(state, unused)
window.history.pushState(state, unused, url)
/* 초기 URL 예: https://www.example.com/ */

// 1. 상태 { page: 1 } 저장 + URL 변경
history.pushState({ page: 1 }, "", "/page-1");

console.log("현재 state:", history.state); // 출력: {page: 1}
// 현재 URL: https://www.example.com/page-1

// 2. 상태 { page: 2 } 저장 + URL 변경
history.pushState({ page: 2 }, "", "/page-2");

console.log("현재 state:", history.state); // 출력: {page: 2}
// 현재 URL: https://www.example.com/page-2

/* 3. 브라우저의 '뒤로 가기' 버튼을 누르면
      주소창은 다시 /page-1로 변하고,
      history.state는 { page: 1 }로 복원됩니다.
*/
/* 현재 페이지 URL 예: https://www.example.com/ */
history.pushState({}, "", "https://www.cross-example.com/"); // 다른 도메인으로의 변경