浏览器中的三种主要客户端存储机制——Cookie、localStorage 和 sessionStorage ——各有不同的生命周期:
Cookie:
会话Cookie: 如果不设置过期时间(Expires 或 Max-Age 属性),Cookie 在浏览器关闭时失效,也称作会话级Cookie。持久Cookie: 若设置了过期时间,则Cookie会在指定的日期过后失效。即使关闭浏览器,只要过期时间未到,再次打开浏览器时Cookie仍然存在。 localStorage:
localStorage 的数据是持久化的,也就是说,除非通过代码显式清除,或者用户在浏览器设置中手动清除网站数据,否则数据将永久保存在客户端。即使关闭浏览器再重新打开,localStorage 中的数据也不会丢失。 sessionStorage:
sessionStorage 存储的数据仅在当前浏览器窗口(或标签页)的会话期间有效。一旦浏览器窗口或标签页被关闭,sessionStorage 中的数据就会被清除。但是,刷新页面不会清除sessionStorage中的数据,它只在会话终止时(即窗口关闭)才消失。
总结:
Cookie 生命周期可由开发者设置,既可以是临时(会话)也可以是持久(根据过期时间)。localStorage 数据始终存在,除非主动删除。sessionStorage 数据仅在浏览会话期间存在,窗口或标签关闭后数据不再保留。