Window.sessionStorage
MDN链接:https://developer.mozilla.org/zh-CN/docs/Web/API/Window/sessionStorage#%E8%AF%AD%E6%B3%95
1.根据MDN介绍:
sessionStorage
属性允许你访问一个,对应当前源的 session Storage
对象。它与 localStorage
相似,不同之处在于 localStorage
长久保存整个网站的数据,存储的数据没有过期时间设置,直到手动去除;而存储在 sessionStorage
里面的数据在页面会话结束时会被清除。
- 页面会话在浏览器打开期间一直保持,并且重新加载或恢复页面仍会保持原来的页面会话。
- 在新标签或窗口打开一个页面时会复制顶级浏览会话的上下文作为新会话的上下文,这点和 session cookies 的运行方式不同。
- 打开多个相同的 URL 的 Tabs 页面,会创建各自的
sessionStorage
。 - 关闭对应浏览器标签或窗口,会清除对应的
sessionStorage
。
2.语法:
1 // 保存数据到 sessionStorage 2 sessionStorage.setItem('key', 'value'); 3 4 // 从 sessionStorage 获取数据 5 let data = sessionStorage.getItem('key'); 6 7 // 从 sessionStorage 删除保存的数据 8 sessionStorage.removeItem('key'); 9 10 // 从 sessionStorage 删除所有保存的数据 11 sessionStorage.clear();
3.返回值:一个storage对象(键值对)
4.示例:
下面的示例会自动保存一个文本输入框的内容,如果浏览器因偶然因素被刷新了,文本输入框里面的内容会被恢复,因此写入的内容不会丢失。
1 // 获取文本输入框 2 let field = document.getElementById("field"); 3 4 // 检测是否存在 autosave 键值 5 // (这个会在页面偶然被刷新的情况下存在) 6 if (sessionStorage.getItem("autosave")) { 7 // 恢复文本输入框的内容 8 field.value = sessionStorage.getItem("autosave"); 9 } 10 11 // 监听文本输入框的 change 事件 12 field.addEventListener("change", function() { 13 // 保存结果到 sessionStorage 对象中 14 sessionStorage.setItem("autosave", field.value); 15 });
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理