web存储分类
客户端和服务端
认识web存储
随着web应用的发展,是的客户端存储的用途越来越多,然而实现客户端端存储的方式也是越来越多样化。最简单最兼容的方式就是cookie,但作为真正的客户端存储cookie还是存在着许许多多的弊端的。同时,各种浏览器也有属于自己的存储方式。例如,IE6以及以上版本中可以使用userData Behavior,在Firefox中可以使用globalStorage,而在Flash插件还可以使用Flash Local Storage,但是这几种方式存在着兼容性等方面的弊端,对于客户端的存储不属于最好的方式。
由于上述情况,html5中增加的了几种新的存储方式。web Database和web Storage。
各种方式存储之间的区别
认识webstorage
优点
缺点
localStorage
sessionStorage
浏览器支持
这是html5新增的客户端存储数据的方式,提供了易于操作的api,只需要设置键值的方式即可。在每个用户域下面存储的数据大小在5M-10M。包含下面的sessionStorage和localStorage。同时,还包括web Database。
存储的数据大小更大。
存储的数据保存在客户端,不需要与浏览器进行通信,这样可以减少我们的带宽消耗。
提供了丰富易用的API,使得开发者更加容易的开发。
使用独立的存储空间。每个域下面都有独立的存储空间,每个空间完全独立,可以避免数据的错乱(这一点其实和cookie没什么太大的区别)。
由于每个域下面存储的数据都是独立的空间,我们在一个域下面是不能使用其他域下面的数据。
由于数据在没有我们进行主动的删除的情况下,存储的数据是一直保存在的并且数据没进行加密处理,很容易造成数据的窃取。
localStorage是一种没有时间限制的存储方式,除非我们自己主动的清除数据不然数据是不会丢失的。
sessionStorage是针对session的存储方式,当我们浏览器或者操作窗口执行了关闭操作,sessionStorage存储的数据将会丢失。同时只能在同一个会话的页面中才能使用。
IE8.0以上,Firefox3.0以上,opera10.5以上,chrome3.0以上,safari4.0以上。
cookie工作原理
优点
缺点
cookie作为一种客户端存储的方式,主要采用的是文本存储。当有应用程序使用cookie的时候,服务器会将cookie发送到客户端,客户端进行保存。当用户进行下次访问时,会将客户端存储的cookie发送到服务器上面。在开发中,最典型的案例就是用来存储用户信息。
简单方便
浏览器负责发送数据
浏览器自己管理不同站点的数据,不容易发生数据的错乱等情况
正如上面讲到的cookie工作原理,我们通过服务端到客户端,客户端到服务器之间的通信。这样造成有的不必要的带宽消耗,同时也影响页面的加载速度导致用户的体验性变差。
存储的数据大小限制,cookie只能存储4kb大小的数据。
安全性。cookie的数据以文本的方式存在客户端上面,安全性很低,很容易造成数据被窃取。
数量限制。多数浏览器可存储的cookie数量为30-50个,也有的浏览器支持300个,而IE6只支持20个。
数据完整性。当我们客户端设置为最高安全级别的时候,我们的cookie会失效。
cookie的优缺点
web storage的优缺点
实例代码
注意:localStorage和sessionStorage存储的都是字符串对象。
创建
获取存储
删除存储
-
<script type="text/javascript">// 创建均使用localStorage做示例,sessionStorage语法方式和localStorage是一样的,localStorage(key, value);或者localStorage.key = "value";window.onload = function(){if (window.localStorage) { localStorage.setItem("userName", "张三");} }</script> -
<script type="text/javascript">window.onload = (window.localStorage &&"userName", "张三""userName"</script>
-
<script type="text/javascript">window.onload = (window.localStorage &&"userName", "hello,world!"</script>
检测当前浏览器是否支持
-
<script type="text/javascript">// 验证当前的浏览器是否支持localStorage和sessionStoragewindow.onload = function(){if (window.localStorage && window.sessionStorage) {alert("你的浏览器支持localStorage和sessionStorage"); } }</script>
0
0
相关文章
本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门AI工具
相关专题
本专题系统整理pixiv网页版官网入口及登录访问方式,涵盖官网登录页面直达路径、在线阅读入口及快速进入方法说明,帮助用户高效找到pixiv官方网站,实现便捷、安全的网页端浏览与账号登录体验。
616
2026.02.13
本专题系统整理微博网页版官方入口及网页端登录方式,涵盖首页直达地址、账号登录流程与常见访问问题说明,帮助用户快速找到微博官网主页,实现便捷、安全的网页端登录与内容浏览体验。
194
2026.02.13
本专题围绕Flutter框架展开,系统讲解跨平台UI构建原理与状态管理方案。内容涵盖Widget生命周期、路由管理、Provider与Bloc状态管理模式、网络请求封装及性能优化技巧。通过实战项目演示,帮助开发者构建流畅、可维护的跨平台移动应用。
91
2026.02.13
本专题面向前端开发者,深入讲解 TypeScript 类型系统与大型项目结构设计方法,并结合 Vite 构建工具优化前端工程化流程。内容包括模块化设计、类型声明管理、代码分割、热更新原理以及构建性能调优。通过完整项目示例,帮助开发者提升代码可维护性与开发效率。
20
2026.02.13
本专题围绕 Redis 在高并发系统中的应用展开,系统讲解主从复制、哨兵机制、Cluster 集群模式及数据分片原理。内容涵盖缓存穿透与雪崩解决方案、分布式锁实现、热点数据优化及持久化策略。通过真实业务场景演示,帮助开发者构建高可用、可扩展的分布式缓存系统。
54
2026.02.13
本专题系统整理雨课堂网页版官方入口及在线登录方式,涵盖账号登录流程、官方直连入口及平台访问方法说明,帮助师生用户快速进入雨课堂在线教学平台,实现便捷、高效的课程学习与教学管理体验。
15
2026.02.12
本专题汇总豆包AI官方网页版入口及在线使用方式,涵盖智能写作工具、图片生成体验入口和官网登录方法,帮助用户快速直达豆包AI平台,高效完成文本创作与AI生图任务,实现便捷智能创作体验。
598
2026.02.12
本专题面向后端开发与数据库工程师,深入讲解 PostgreSQL 查询优化原理与索引机制。内容包括执行计划分析、常见索引类型对比、慢查询优化策略、事务隔离级别以及高并发场景下的性能调优技巧。通过实战案例解析,帮助开发者提升数据库响应速度与系统稳定性。
56
2026.02.12
热门下载
相关下载
精品课程
最新文章


