cookies,localStorage,sessionStorage,indexedDB区别。

特性 cookies localStorage sessionStorage indexedDB
数据的生命期 一般有服务器生成,可设置失效时间。如果在浏览器端生成的cookie,默认关闭浏览器后失效 除非被清除,否则永久保存 仅在当前会话下有效,关闭页面或浏览器后失效 永久保存
存放数据的大小 4K左右 PC一般5M,移动端2.5M PC一般5M,移动端2.5M 一般没有上限大小
与服务器通信 每次都会携带在http头中,如果使用cookie保存过多会带来性能问题 仅在浏览器中保存,不参与和服务器通信 仅在浏览器中保存,不参与和服务器通信 不参与
易用性 原生的接口不太友好,需要封装下 原生接口可以接受,再次封装对Object和Array有更好的支持 原生接口可以接受,再次封装对Object和Array有更好的支持 比较繁琐,异步,支持事务
同源策略 同源 同源 同源 同源

共同点:

  • 都保存在浏览器端,都是同源的。

区别:

  • cookie数据始终在同源的http请求中携带,而webStorage不会在请求中请求,仅仅在本地存储;
  • 存储大小区别, cookie是最大长度4K,webStorage可以达到5M甚至更大,indexedDB无限制;
  • 数据有效时间区别, sessionStorage 仅仅是会话级别的存储,它只在当前浏览器关闭前有效,不能持久保持;localStorage 始终有效,即使窗口或浏览器关闭也一直有效,除非用户手动删除,其才会失效;cookie 只在设置的 cookie 过期时间之前一直有效,indexedDB持久存储;
  • 作用域区别:sessionStorage不能在不同的浏览器窗口中共享,即使是同一个页面;localStorage、cookie和indexedDB在所有同源窗口都是共享的;
  • webStorage支持事件通知机制,可以将数据更新的通知发送给监听者。api的接口使用更方便。
  • indexedDB支持事务。
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 作者:无物似情浓 十六、私甜糖水铺 地址:大学路多少号忘记了,这么短的路你去走走,招牌很大。 这是一家符合网红气质...
    续事创意写作工作室阅读 3,146评论 0 3
  • 张清的日精进第500天 选人标准:又红又专 红,指人品好;专,指业务好。 其实这个是两方面的,任何一个团队找到合适...
    kiyoi2017阅读 1,391评论 0 0
  • 24姐近半年就忙着加班了。 然后在每次加班后开始反省人生。自己到底适合做什么?学过艺术,做过设计,现在又在做数据分...
    24sevensis阅读 7,780评论 1 4
  • [TOC] 内容 时间:2016/12/07 耗时20分钟 截图 总结 跑的包字要紧凑 踏的足字旁要斜一点,整体好看
    上山老人阅读 1,459评论 0 0

友情链接更多精彩内容