最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
JavaScript 的本地存储 localStorage 如何存取数据
时间:2026-07-16 08:58:47 编辑:袖梨 来源:一聚教程网
localStorage只存储字符串,存对象需JSON.stringify()、取时需JSON.parse()并加try...catch;数字布尔值会丢失类型,需手动转换;键名建议用字母数字下划线;不同源数据不共享,容量5–10MB,敏感信息勿存。
localStorage 存取数据很简单,但关键在细节:它只认字符串,存对象或数字必须手动转换,取出来也得还原,否则会出错。
怎么存数据
用 setItem(key, value) 方法,两个参数都必须是字符串:
- 直接存字符串没问题:
localStorage.setItem('theme', 'dark') - 存数字或布尔值会自动转成字符串,可能丢失类型:
localStorage.setItem('count', 42)实际存的是'42',取出来是字符串不是数字 - 存对象必须先用
JSON.stringify():localStorage.setItem('user', JSON.stringify({name: '李四', age: 30})) - 键名建议用字母、数字、下划线,避免空格和特殊字符,方便维护
怎么取数据
用 getItem(key),返回的是字符串,要还原成原始类型:
- 取字符串直接用:
const theme = localStorage.getItem('theme') - 取数字或布尔值,需手动转换:
const count = Number(localStorage.getItem('count'))或const active = localStorage.getItem('active') === 'true' - 取对象必须用
JSON.parse(),且强烈建议加try...catch防止解析失败:try {<br> const user = JSON.parse(localStorage.getItem('user'));<br>} catch (e) {<br> // 数据损坏或为空时兜底处理<br>}
怎么删数据
有两种常用方式:
立即学习“Java免费学习笔记(深入)”;
- 删单个:
localStorage.removeItem('theme') - 清空全部:
localStorage.clear()—— 慎用,会删除当前域名下所有 localStorage 数据
几个实用提醒
实际开发中容易踩坑的地方:
- 不同协议、域名、端口之间数据不共享(比如 http://a.com 和 https://a.com 是不同源)
- 容量约 5–10MB,超限时会抛
QuotaExceededError异常 - 数据不会过期,关浏览器、重启电脑都不丢,适合存用户偏好、表单草稿等长期需要的数据
- 敏感信息(如 token、密码)不该存在 localStorage,它不安全,容易被 XSS 攻击窃取
相关文章
- 国行Switch已经连不上WIFI了 国行勇士遭遇持续背刺 09-04
- 童话师2026最新可用的兑换码内容一览 09-04
- TPLink TLWDR5300 无线路由器无线桥接(WDS)如何设置 09-04
- 想成为Galgame领域大神全结局达成选项 09-04
- 星环之诗游戏各角色出现地点及时间 09-04
- 无限暖暖2.5埋骨地新增采集物分布点位 09-04