Javascript 在indexedDB上为当前会话存储临时数据

Javascript 在indexedDB上为当前会话存储临时数据,javascript,html,storage,indexeddb,sessionstorage,Javascript,Html,Storage,Indexeddb,Sessionstorage,是否有一种在indexedDB上存储临时数据的方法与sessionStorage相同:同一域的其他会话(选项卡)不可用,并且在会话关闭时过期(影响storeObject或整个storeObject上的某些项目) 我可以创建一个具有随机名称的storeObject,并在用户退出页面时添加卸载事件侦听器以删除此storeObject。但这里的问题是,storeObject将被删除,即使用户只是在同一域中从一个页面更改为另一个页面或刷新页面,。。。(同一届会议) 我知道有一些会话存储的实现,比如基于d

是否有一种在indexedDB上存储临时数据的方法与sessionStorage相同:同一域的其他会话(选项卡)不可用,并且在会话关闭时过期(影响storeObject或整个storeObject上的某些项目)

我可以创建一个具有随机名称的storeObject,并在用户退出页面时添加卸载事件侦听器以删除此storeObject。但这里的问题是,storeObject将被删除,即使用户只是在同一域中从一个页面更改为另一个页面或刷新页面,。。。(同一届会议)


我知道有一些会话存储的实现,比如基于document.cookie API的存储,这对我来说不是一个完美的解决方案。

我不确定是否有一种方法可以实现您想要的功能。我相信indexDB在被删除之前是持久的。您可以根据时间戳进行删除,这只能在用户返回或注销按钮后发生

这可能有助于您在不存储太多数据的情况下使用localStorage:

如果您担心并发数据覆盖,可以实施锁定:

您是正确的,IndexedDB数据将一直保留,直到用户清除脱机缓存(或应用程序删除它)