当前位置: 首页 > news >正文

localStorage 和 sessionStorage

在前端开发中,localStoragesessionStorage 都是浏览器提供的 Web Storage API,用于在客户端存储数据,但它们在生命周期和作用域上有显著区别:

核心区别总结

  1. ​生命周期​​:

    • localStorage:数据永久存储,除非手动清除(通过代码、开发者工具或浏览器设置)。
    • sessionStorage:数据仅在当前会话有效(关闭标签页或浏览器窗口后自动清除)。
  2. ​作用域​​:

    • localStorage:同源(相同协议+域名+端口)的所有标签页和窗口共享。
    • sessionStorage:仅对当前标签页有效(即使是同源的其他标签页也无法访问)。

使用场景对比

特性localStoragesessionStorage
​持久性​适合长期保存数据(如用户偏好设置)适合临时数据(如表单草稿)
​共享性​多窗口共享数据仅限单标签页独立使用
​敏感数据​不推荐(易残留)更安全(会话结束即清除)

代码示例

// 存储数据
localStorage.setItem('theme', 'dark'); // 长期保存
sessionStorage.setItem('formDraft', JSON.stringify(data)); // 临时保存// 读取数据
const theme = localStorage.getItem('theme');
const draft = JSON.parse(sessionStorage.getItem('formDraft'));// 清除数据
localStorage.removeItem('theme'); // 需手动清除
// sessionStorage 关闭标签页后自动清除

注意事项

  1. ​存储限制​​:两者通常有约 5MB 的存储上限(不同浏览器可能差异)。
  2. ​同步操作​​:会阻塞主线程,大量数据操作建议用 IndexedDB
  3. ​数据类型​​:仅支持字符串,存储对象需用 JSON.stringify() 转换。
  4. ​隐私模式​​:部分浏览器的无痕模式下可能禁用 Web Storage。

http://www.lryc.cn/news/578165.html

相关文章:

  • Python + Selenium 自动化爬取途牛动态网页
  • 在vue当中使用动画
  • Hily×亚矩云手机:社交元宇宙的“云端心跳加速器”
  • JVM 垃圾回收(GC)笔记
  • LLaMA-Factory框架之参数详解
  • Webpack原理剖析与实现
  • 1.1_2 计算机网络的组成和功能
  • FastDFS分布式储存
  • 华为云Flexus+DeepSeek征文 | ​​接入华为云ModelArts Studio大模型 —— AI智能法务解决方案革新法律实践​
  • 38.docker启动python解释器,pycharm通过SSH服务直连
  • ERP系统Bug记录
  • 前端Vue面试八股常考题(一)
  • 中证500股指期货一手多少钱呢?风险如何?
  • HTML5 实现的圣诞主题网站源码,使用了 HTML5 和 CSS3 技术,界面美观、节日氛围浓厚。
  • 华为云 Flexus+DeepSeek 征文|基于 Dify 平台开发智能客服 AI Agent 的完整实战指南
  • 【STM32HAL-第1讲 基础篇-单片机简介】
  • 前端开发面试题总结-原生小程序部分
  • 《从量子奇境到前端优化:解锁卡西米尔效应的隐藏力量》
  • 《用奥卡姆剃刀原理,为前端开发“减负增效”》
  • 【软考高项论文】论信息系统项目的整体管理
  • 【Java面试】10GB,1GB内存,如何排序?
  • PHP WebSocket服务器搭建指南
  • 从入门到精通:npm、npx、nvm 包管理工具详解及常用命令
  • Springboot + vue + uni-app小程序web端全套家具商场
  • 【Spring】——事务、整合、注解
  • 设计模式-观察者模式(发布订阅模式)
  • UE5 - 制作《塞尔达传说》中林克的技能 - 17 - 遥控炸弹(二)
  • 键盘第一下无反应
  • 基于Spring Boot的绿园社区团购系统的设计与实现
  • 磁悬浮轴承位移信号的高精度估计:卡尔曼滤波算法深度解析