1.2 浏览器记录

浏览器记录是浏览器中各页面用户的导航记录。在现代浏览器中,浏览器记录并没有直接的API可获取,其可通过window.history.length获取当前记录栈的长度信息。浏览器记录由浏览器统一管理,并不属于某个具体的页面,与页面形式及其内存均无关。

window.history对象上存在着诸多属性。在浏览器中打开控制台,打印出history对象,如下面的API列表:

从https://caniuse.com中的数据来看,约97%的浏览器支持历史记录管理(Session History Management)的特性,这一特性主要包括window.history.pushState、window.history.replaceState与popstate事件,它们分别可以添加和修改历史记录条目。一般通常在浏览器的全局对象window上操作history对象,在明确history挂载在全局对象上后,基于此进行约定,下文如无特别说明,history与window.history等价。