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 });

浙公网安备 33010602011771号