localStorage 本身不存在和有效期相关的 API,那么实现一个带有效期的缓存
const localStorageWithTime = { get: k => { const v = localStorage.getItem(k) if (! v) return undefined const o = JSON.parse(v), l = o?.__life__ if (! l) return console.error(`localStorageWithTime: "${k}" doesn't have property "__life__".`) if (l <= Date.now()) { localStorage.removeItem(k) return console.log(`localStorageWithTime: "${k}" expired. "__life__" is ${l}.`) } return o.__data__ }, set: (k, v, l) => { localStorage.setItem(k, JSON.stringify({ __life__: l, __data__: v })) } }
存储时加上过期日期 获取时如果过期则获取为空且删除
可以参考 cookie 的机制,在存储的时候加上过期事件,可以是相对的也就是绝对的
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
暂无简介
文章 0 评论 0
接受
发布评论
评论(3)
存储时加上过期日期 获取时如果过期则获取为空且删除
可以参考 cookie 的机制,在存储的时候加上过期事件,可以是相对的也就是绝对的