清除指定会话缓存需调用removeItem()并传入键名,如sessionStorage.removeItem('token');键不存在时静默忽略;判断存在后再删除应使用!== null;批量删除可用forEach或filter;clear()会清空全部,不可用于指定清除。

SessionStorage 中清除指定的会话缓存,只需调用 removeItem() 方法,并传入对应的键名即可。
使用 removeItem() 删除单个指定键
这是最常用、最直接的方式。SessionStorage 是键值对存储,每个数据项都有唯一键名,只要知道这个键,就能精准删除它。
-
sessionStorage.removeItem('token');—— 删除键为'token'的数据 -
sessionStorage.removeItem('userInfo');—— 删除用户信息缓存 - 如果键不存在,该方法不会报错,只是静默忽略
确认键是否存在再删除(可选增强)
虽然 removeItem() 本身安全,但有时你想先判断再操作(比如做日志或条件逻辑):
Java项目代码review工具。分析Git变更+完整调用链路上下文,推断业务需求,进行多维度评分和分类汇总,生成完整PRD文档。包含细粒度Java代码审查清单(Null安全、异常处理、Streams、并发、equals/hashCode、资源管理、API设计、性能、MyBatis/ORM、事务边界、SQL/DD...
if (sessionStorage.getItem('tempData') !== null) { sessionStorage.removeItem('tempData'); }- 注意:不能用
== null或!sessionStorage.getItem(...)判定,因为值可能是空字符串或'false'等 falsy 值,但仍是有效存储
批量清除多个指定键
若需一次删掉几个已知键,可封装成小函数或循环处理:
立即学习“Java免费学习笔记(深入)”;
['cartId', 'promoCode', 'step'].forEach(key => sessionStorage.removeItem(key));- 也可写成数组遍历 + 条件过滤,例如只删以
'tmp_'开头的键:Object.keys(sessionStorage).filter(k => k.startsWith('tmp_')).forEach(k => sessionStorage.removeItem(k));
注意:clear() 是清空全部,不是“指定清除”
sessionStorage.clear() 会删除当前域下所有 sessionStorage 数据,不可逆,慎用。
- 它不区分键名,也不接受参数,无法用于“指定清除”场景
- 仅在退出登录、重置整个会话状态等极少数情况下才考虑使用

















