bfcache
前进/后退 缓存或 bfcache 是一种现代浏览器中可用的性能增强功能,它可以实现先前访问页面之间即时的前进和后退导航。它是通过在用户离开页面时存储页面的完整快照来实现的;当用户决定返回该页面时,浏览器可以快速恢复快照,而不是需要重复加载页面的网络请求。
快照包含内存中的整个页面,包括 JavaScript 堆;当用户离开页面时,正在进行的代码会被暂停,并在他们返回页面时恢复。另一方面,HTTP 缓存条目中只包含对先前请求的响应。因此,bfcache 提供的速度比 HTTP 缓存更快。
缺点是 bfcache 条目需要更多资源,并且在如何表示正在进行的代码方面会带来复杂性。某些代码功能(例如 unload
处理程序)不兼容,因此它们出现在页面上会阻止使用 bfcache。
bfcache 对性能有很大帮助,因此,您应该确保您的页面没有被阻止使用它。您可以使用 notRestoredReasons
API 来监控页面是否被阻止使用 bfcache,以及原因。
另请参见
- 前进和后退缓存 on web.dev (2023)