localStorage是浏览器提供的持久化本地存储,仅支持字符串,存取对象需jsON.stringify/parse;数据同源共享且永久保存,关闭浏览器不丢失;与sessionStorage区别在于后者仅限当前标签页、关闭即销毁;二者均不发往服务器、受同源策略限制。

localStorage 是浏览器提供的一种持久化本地存储方式,用起来简单直接,核心就是存字符串、取字符串、删字符串。
localStorage 基本用法
它只支持字符串类型的值,所以存对象或数组时得先用 json.stringify() 转成字符串;读出来再用 JSON.parse() 还原。
- 存数据:localStorage.setItem(“key”, “value”)(比如存用户名:
localStorage.setItem("username", "小明")) - 取数据:localStorage.getItem(“key”)(返回字符串,键不存在时返回
NULL) - 删单个:localStorage.removeItem(“key”)
- 清空全部:localStorage.clear()
注意:同一协议 + 域名 + 端口下的所有页面都能访问相同的 localStorage,比如 https://example.com/a.html 和 https://example.com/b.html 可以互相读写。
localStorage 和 sessionStorage 的关键区别
它们 API 完全一样,但生命周期和作用域不同:
python基础教程至60课,这篇教程开始就为大家介绍了,为什么学习python,python有什么优点等,确实让你想快点学习python。为什么用Python作为编程入门语言? 原因很简单。 每种语言都会有它的支持者和反对者。去Google一下“why python”,你会得到很多结果,诸如应用范围广泛、开源、社区活跃、丰富的库、跨平台等等等等,也可能找到不少对它的批评,格式死板、效率低、国内用的人很少之类。不过这些优缺点的权衡都是程序员们的烦恼。作为一个想要学点
1 立即学习“Java免费学习笔记(深入)”;
- localStorage 数据永久保留,关掉标签页、关掉浏览器、甚至重启电脑都不会丢,除非用户手动清除缓存或代码调用
.clear()或.removeItem() - sessionStorage 只在当前标签页有效,关闭该标签页(哪怕只是刷新后又关掉)数据就没了,新开的同域名标签页也拿不到之前 sessionStorage 的内容
- 两者都不随 HTTP 请求发给服务器,不占用带宽,这点和 cookie 不同
- 都受同源策略限制,跨域页面无法共享
什么时候该用哪个?
选对存储方式能避免很多 bug 和体验问题:
- 用 localStorage 存长期有效的数据:用户主题偏好、登录后的 Token(注意安全)、常用搜索词、记住的表单项(比如“下次自动登录”勾选状态)
- 用 sessionStorage 存临时中转数据:多步骤表单的中间状态、页面跳转时传递的少量参数(比如从列表页点进详情页要带 ID)、防重复提交的标记
- 别用它们存敏感信息(如密码、完整身份证号),因为容易被 xss 攻击窃取
基本上就这些。不复杂但容易忽略细节,比如忘了序列化对象,或者误把 session 数据当成全局可用的了。