← 全部文章

技术与生活 / 一篇记录

把界面偏好交给 localStorage,需要哪些兜底?

它提供同源的字符串键值存储,适合主题和语言等偏好。用户清理数据、存储受限或浏览模式变化时,这些值都可能不存在,代码需要合理缺省行为。

本地存储适合保存界面偏好,但其值是字符串并且可能被用户清除。

实际怎么检查

以下示例可在现代浏览器的开发者工具中观察;涉及 DOM 的代码需要在网页环境运行。

localStorage.setItem('theme-demo', 'dark'); console.log(localStorage.getItem('theme-demo'));

在同源页面刷新后读取,再删除示例键。

遇到异常再检查什么

读写时考虑异常处理,对结构化内容明确 JSON 格式。给键加上项目或功能前缀,也能减少同源多个应用之间互相覆盖的风险。

读取旧版偏好格式时,可以加入版本号或迁移逻辑。值存在并不代表它仍符合当前结构;解析失败后应回到合理默认值,而不是让整个页面因为一个偏好键无法打开。

不要把它当作可靠数据库或存放高敏感凭据的保险箱。

参考:JavaScript 文档。

搜索文章

输入关键词,找回一篇记录。