谈谈本地缓存的几种方式以及他们的区别?

本文探讨了本地缓存的三种主要方式:Cookie、LocalStorage和SessionStorage,分析了它们在与服务器交互、存储大小、存储时间和作用域方面的区别。Cookie会自动发送到服务器,而LocalStorage和SessionStorage则不会。LocalStorage的存储空间较大,数据持久化,而SessionStorage数据在浏览器关闭后清除。三者在同源窗口内的数据共享情况也有所不同。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

谈谈本地缓存的几种方式以及他们的区别?

说起本地缓存,大家想到的应该都是这几个方法:localStoragesessionStoragecookie
相同点不必我再多说了,都可以实现本地缓存的效果。那么他们有什么不同呢?
接下来我把不同点分四个点来说:

与服务器交互

cookie:是网站为了标识用户的身份而存储在用户本地终端上的数据(通常需要加密),通常会在 同源HTTP请求中携带(即使不需要),在浏览器和服务器之间来回传递。coolie还有路径的概念,可以控制存储在某个路径下面。

localStorage & sessionStorage: 不会自动把数据发给服务器,仅在本地存储

存储大小

cookie:根据不同浏览器的限制,大小一般不能超过4k,因为每次 HTTP 请求 都会携带

localStorage& sessionStorage 虽然也有存储大小的限制,但比 cookie大得多,可以达到5M或更大

存储时间

cookie:在设置 cookie 的有效期之前,是一直生效的,与浏览器页面是否关闭无关

localStorage:储存持久数据,浏览器页面关闭数据也不会丢失,除非手动清除数据

sessionStorage:数据在浏览器关闭之后自动清空

作用域不同

cookie:在所有的同源窗口内,数据是共享的

localStorage:也是在所有的同源窗口内,数据是共享的

sessionStorage:不在不同的浏览器窗口中共享,即使是同一个页面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值