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

网站建设业务客户来源dede网站模板

网站建设业务客户来源,dede网站模板,如何查看网站开发者,子页网站设计浏览器的存储机制 - Storage 前言一、核心概念与区别二、常用 API1、存储数据(setItem(key, value))2、 获取数据(getItem(key))3、删除单个数据(removeItem(key))4、清空所有数据(clear()&…

浏览器的存储机制 - Storage

    • 前言
    • 一、核心概念与区别
    • 二、常用 API
      • 1、存储数据(setItem(key, value))
      • 2、 获取数据(getItem(key))
      • 3、删除单个数据(removeItem(key))
      • 4、清空所有数据(clear())
    • 5、遍历所有键(key(index) 或 Object.keys())
    • 三、使用场景
      • LocalStorage
      • SessionStorage
    • <font color=red> 四、注意事项
      • 1、数据类型限制
      • 2、安全性
      • 3、 性能与使用建议
    • 五、与 Cookie 的对比
    • 总结

前言

在前端开发中,Storage 是浏览器提供的用于在客户端存储数据的机制,包括 LocalStorageSessionStorage。它们通过 Window 对象的属性暴露,支持以**键值对**形式存储数据,适用于
不需要频繁与服务器交互 的轻量级数据存储。

位置在 F12开发者工具 ——》 Application ——》 Storage
在这里插入图片描述

一、核心概念与区别

在这里插入图片描述

二、常用 API

两者的 API 完全一致,通过 window.localStoragewindow.sessionStorage 调用。

1、存储数据(setItem(key, value))

// 存储字符串
localStorage.setItem('theme', 'dark'); // LocalStorage
sessionStorage.setItem('searchQuery', '前端'); // SessionStorage// 存储对象(需先转为JSON字符串)
const user = { id: 1, name: 'Alice' };
localStorage.setItem('user', JSON.stringify(user));

2、 获取数据(getItem(key))

const theme = localStorage.getItem('theme'); // "dark"
const searchQuery = sessionStorage.getItem('searchQuery'); // "前端"// 解析JSON对象
const user = JSON.parse(localStorage.getItem('user')); // { id: 1, name: 'Alice' }

3、删除单个数据(removeItem(key))

localStorage.removeItem('theme'); // 删除LocalStorage中的theme键
sessionStorage.removeItem('searchQuery'); // 删除SessionStorage中的searchQuery键

4、清空所有数据(clear())

localStorage.clear(); // 清空当前域名下的所有LocalStorage数据
sessionStorage.clear(); // 清空当前标签页的所有SessionStorage数据

5、遍历所有键(key(index) 或 Object.keys())

// 方法1:通过索引遍历(兼容性好)
for (let i = 0; i < localStorage.length; i++) {const key = localStorage.key(i); // 获取第i个键名const value = localStorage.getItem(key);console.log(`${key}: ${value}`);
}// 方法2:转为对象遍历(ES6+)
const storageKeys = Object.keys(localStorage);
storageKeys.forEach(key => {const value = localStorage.getItem(key);
});

三、使用场景

LocalStorage

  1. 持久化用户配置:记住用户的主题偏好、语言设置等。
  2. 缓存简单数据:缓存频繁访问但不敏感的数据(如登录令牌,需配合安全措施)。
  3. 离线功能:配合 Service Worker 实现离线应用的数据存储。

SessionStorage

  • 临时表单数据:存储用户在当前页面填写的表单数据,防止刷新页面丢失。
  • 单页应用(SPA)状态:存储当前路由的临时状态(如搜索条件),避免路由切换时数据丢失。
  • 敏感数据临时存储:存储一次性使用的敏感数据(如临时验证码),关闭页面后自动清除。

四、注意事项

1、数据类型限制

  • 仅支持存储 字符串,存储对象或数组时需通过 JSON.stringify()JSON.parse() 转换:
// 错误:直接存储对象会转为 [object Object]
localStorage.setItem('user', { name: 'Alice' }); // 正确:先序列化
localStorage.setItem('user', JSON.stringify({ name: 'Alice' }));

2、安全性

  1. 不加密存储:数据以明文存储,禁止存储敏感信息(如密码、支付信息)。
  2. 同源策略:仅同域名下的页面可访问,不同子域名也无法共享(如 a.example.com 和 b.example.com 不共享)。
  3. XSS 风险:存储的数据可能被恶意脚本读取,需避免信任不可控的输入。

3、 性能与使用建议

  1. 同步阻塞:API 为同步操作,大量数据存储可能阻塞主线程,建议分批次处理。
  2. 存储容量限制:避免存储过大数据,超出限制会抛出 QuotaExceededError 异常。
  3. 监听数据变化:可通过 storage 事件监听同一域名下其他窗口的存储变化(SessionStorage 不触发此事件):
window.addEventListener('storage', (event) => {console.log(`${event.key} 的值从 ${event.oldValue} 变为 ${event.newValue}`);
});

五、与 Cookie 的对比

在这里插入图片描述

总结

LocalStorage 和 SessionStorage 是前端轻量级存储的核心工具,适用于
非敏感数据 的持久化或临时存储。使用时需注意数据类型转换、安全性和存储容量,结合业务场景选择合适的存储方式。

http://www.dtcms.com/wzjs/535975.html

相关文章:

  • 石家庄怎样做网站魔方网站
  • 做模板网站乐云seo效果好怎样推广自己做的网站
  • 三门峡网站设计经营网站备案信息
  • 网站seo优化要懂得做微调推广是怎么做的
  • aspnet网站开发到部署流程海南省住房公积金管理局电话号码
  • 学设计的网站有哪些内容代理公司注册记账
  • 手机wap网站怎么做做移动网站优化优
  • 建设中网站哈尔滨城乡建设网站
  • 怎么样黑进网站后台营销网站建设公司推荐
  • 拖拽网站开发企业名录怎么导出
  • 网站点赞怎么做的信息技术教案 建设我们的网站
  • 外贸网站好做吗大连seo网站推广
  • 肇庆自助网站建设系统营销型网站页面
  • 怎样建立个人的网站三五互联网站
  • 海南省交通工程建设局网站重庆网站建设找重庆最佳科技
  • 公司建设网站需要去哪报备缅甸最新新闻
  • 网站建设策划方案书论文价格合理的网站建设
  • 电子商务网站建设的结论找人做网站被骗怎么办
  • 视频网站做游戏分发好的网站开发
  • 沈阳网站优化公司郑州网站建设排名
  • 门户网站建设定制188网站开发
  • 自己做网站系统教程wordpress 可视化排版
  • 有什么网站可以做免费推广淄博市网站云平台
  • asp 公司网站郓城网站建设价格
  • 海洋承德网站建设公司去黄山旅游攻略
  • 建站工具 phpwindwordpress个人
  • 网站备案号被注销怎么办应城网站建设
  • 长岭网站优化公司广东建站
  • 网站设计与制作说明郑州做网站软件
  • 网站类网站开发犯罪吗301重定向到新网站