History API 란?
History
인터페이스는 브라우저의 세션 기록, 현재 페이지를 불러온 탭 혹은 프레임의 방문기록을 조작할 수 있는 방법을 제공한다.- 브라우저에서 뒤로가기와 같은 액션을 수행했을 때 방문하는 페이지를 조작하는 것이다.
history
는 싱글톤 인스턴스로 글로벌에 1개만 존재한다.
인스턴스 프로퍼티
History
인터페이스는 어떤 속성도 상속하지 않는다.
length
: 세션 기록에 몇개의 페이지가 있는지의 길이이다.- scrollRestoration: 해당 세션으로 갔을 때 스크롤까지 복원할지를 설정한다.
auto
혹은manual
이 있다. state
: 히스토리 스택의 맨 위에 있는 상태를 나타내는 값을 반환한다. pushState() 혹은 replaceState() 를 사용할 때까지는 null 이다.
인스턴스 메서드
back()
: 뒤로 가기.history.go(-1)
과 같다.forward()
: 앞으로 가기.history.go(1)
과 같다.go()
: 현재 페이지의 상대적 위치로 가기. 이전은-1
, 앞으로는1
, 범위를 넘어서면 무시된다.pushState()
: 데이터를 세션 기록 스택에 푸시한다. Working with the History API 문서 참조replaceState()
: 히스토리 스택의 가장 최근 항목을 지정된 데이터로 업데이트한다. Working with the History API 문서 참조
추가로 봐야 할 문서
공식문서
반응형
'자바스크립트 > 개념' 카테고리의 다른 글
이벤트 루프는 어떻게 non-blocking 연산을 막힘없이 처리하는가? (0) | 2024.01.04 |
---|---|
자바스크립트의 싱글 스레드 모델과 이벤트 루프 (0) | 2024.01.04 |
자바스크립트에서 머신 코드 대신 바이트 코드를 사용하는 이유 (0) | 2024.01.04 |
innerHTML vs innerAdajcentHTML() 비교 (0) | 2023.07.15 |
자바스크립트 이벤트(Event) 객체와 커스텀 이벤트 (Custom Event) 란? (0) | 2023.07.07 |