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

郑州网站建设企起网站下载

郑州网站建设企起,网站下载,电子政务网站建设要求,做网站销售的工作LocalStorage 和 SessionStorage 都是浏览器提供的 Web Storage API,常用于前端缓存数据,但它们在生命周期、作用范围、使用场景等方面有明显区别。 一、区别对比表特性LocalStorageSessionStorage生命周期永久保存,除非手动删除当前标签页会…

LocalStorage 和 SessionStorage 都是浏览器提供的 Web Storage API,常用于前端缓存数据,但它们在生命周期、作用范围、使用场景等方面有明显区别。

一、区别对比表

特性LocalStorageSessionStorage
生命周期永久保存,除非手动删除当前标签页会话,页面关闭即清除
存储大小一般约 5~10MB一般约 5MB
是否随请求发送❌ 不会❌ 不会
页面刷新后✅ 数据还在✅ 数据还在
新标签页打开✅ 共享❌ 不共享
API 同步/异步同步 API同步 API
数据类型支持仅支持字符串(需要手动转换为对象)仅支持字符串(需要手动转换为对象)

二、应用场景分析

LocalStorage:适合需要持久保存的数据

  • 适用场景:

    • 登录 Token(如果非敏感)

    • 用户偏好设置(如主题色、语言)

    • 搜索历史记录、本地草稿

    • 接口缓存数据(非敏感)

  • 示例:

// 存储
localStorage.setItem('token', 'abc123');
localStorage.setItem('theme', 'dark');// 获取
const token = localStorage.getItem('token');// 删除
localStorage.removeItem('token');

SessionStorage:适合临时、当前会话用完就清的数据

  • 适用场景:
    • 多步表单中间数据

    • 登录跳转回之前页面临时状态

    • 某些不希望在新标签页共享的临时变量

  • 示例:
// 存储
sessionStorage.setItem('step1Data', JSON.stringify({ name: '淇淇' }));// 获取
const data = JSON.parse(sessionStorage.getItem('step1Data'));// 清除
sessionStorage.clear();

三、结合实际建议

场景推荐使用原因
登录 token(前端存储时)LocalStorage保留登录状态,刷新不丢失
表单临时数据(多步骤)SessionStorage用户关闭页面即清理,防止数据过期
用户偏好(如语言、主题色)LocalStorage长久生效,适合持久配置
接口缓存(短时间内复用)Vuex + Local/SessionStorage根据数据重要性和时效性选择组合
敏感信息❌建议不存储建议放在 Cookie(HttpOnly)或只存在内存中

四、用LocalStorage封装一个带有效期的缓存方法

/*** LocalStorage 带有效期缓存* ttl 单位:毫秒*/
const LSCache = {/*** 设置缓存* @param {string} key   键名* @param {*}      value 任意可序列化的数据* @param {number} ttl   有效期(毫秒),如 30 分钟 => 30 * 60 * 1000*/set(key, value, ttl) {const expire = Date.now() + ttl;const record = { value, expire };localStorage.setItem(key, JSON.stringify(record));},/*** 读取缓存(自动判断是否过期)* @param  {string} key* @return {*} 数据或 null(不存在 / 已过期)*/get(key) {const str = localStorage.getItem(key);if (!str) return null;try {const { value, expire } = JSON.parse(str);if (expire === 0 || expire >= Date.now()) {return value;}// 过期自动清理localStorage.removeItem(key);} catch (_) {// 数据被篡改或非 JSON,直接删除localStorage.removeItem(key);}return null;},/** 手动删除 */remove(key) {localStorage.removeItem(key);},/** 扫描所有 key,清理过期数据(可在 App 启动或定时调用) */clearExpired() {Object.keys(localStorage).forEach(k => this.get(k));}
};

使用范例

// 存 30 分钟
LSCache.set('token', 'abc123', 30 * 60 * 1000);// 读取
const token = LSCache.get('token');
if (token) {console.log('token 未过期:', token);
}// 手动删除
LSCache.remove('token');// 启动时批量清理过期
LSCache.clearExpired();
http://www.dtcms.com/wzjs/440790.html

相关文章:

  • 做建网站的公司项目外包平台
  • 日照网站建设aso优化排名推广
  • 怎么做公司的宣传网站自媒体推广平台
  • 西青做网站汕头网站排名优化
  • 杨凯做网站山东泰安网络推广
  • 电脑怎么下免费wordpressseo服务合同
  • 营销网站建设服务做推广的技巧
  • 做分销网站关键词优化排名网站
  • 网站建设模板坏处湖南seo网站多少钱
  • 智慧团建网站登录密码是啥哪个模板建站好
  • 网站开发和优化关系搭建网站需要哪些步骤
  • 一般通过逸民seo免费推广软件
  • 做网站 会计分录互联网营销师证书骗局
  • 江苏科技大学新校区建设网站东莞疫情最新消息通知
  • 找做钢筋笼的活网站百度小说排行榜总榜
  • 做企业网站的研究现状深圳推广公司有哪些
  • 怎么做门户网站搜索引擎优化行业
  • 不会代码怎么做网站怎样在百度上宣传自己的产品
  • 电子商务网站建设实验原理seo怎么刷排名
  • 如何制作一个网站h5今日冯站长之家
  • 建设工程教育网校百度seo关键词排名技术
  • WordPress安装子目录如何进行网站性能优化?
  • 网站开发指的是什么推广的渠道和方法有哪些
  • 做app和网站合肥全网推广
  • 绵阳公司网站建设西安百度推广竞价托管
  • 太原适合网站设计地址有什么平台可以发布推广信息
  • wordpress 行距seo工作内容
  • 网站建设合同续签申请书朋友圈广告投放
  • ppt插件 网站十大广告投放平台
  • 西安网站快速优化网站流量查询网站统计查询