常用的前端缓存

1.cookie

cookie是浏览器提供的一种机制,是存储于用户硬盘的文本文件中。cookie可以跨越一个域名下的多个网页,但不能跨域访问。

  • cookie的局限性:【cookie的缺点集中于安全性和隐私保护】
  • cookie可能会被禁用。当用户非常注重个人隐私的时候,很有可能禁用浏览器的cookie功能
  • cookie是与浏览器有关。不能跨浏览器访问
  • cookie可能被删除。cookie是存放在硬盘上的文件,很有可能会被用户删除。
  • cookie的安全性不高。所有的cookie都是以纯文本的形式记录于文件中,因此如果要保存用户名和密码等信息时,最好先进性加密处理。
  • 存储大小限制,存储空间4-10KB左右

2.session

session是服务器端的机制,把信息是存放在服务器端的。是通过sessionId来识别客户端,sessionId是存放在cookie中的。
session相比于cookie安全性更高一些,信息都是存放在服务器,一般处于安全考虑会把比较隐私的信息存放在cookie中

  • session的局限性:
  • session的使用依赖cookie,要在cookie中存储sessionId
  • 过度使用session变量将会导致代码不可读而且不好维护

3.localStorage

localStorage是在html5中新增的特性,这个特性主要是作为本地存储使用的,一旦保存于localStorage中就要手动清除。localStorage解决了cookie存储空间不足的问题,cookie存储空间大小为4k,而localStorage一般浏览器支持的是5M大小,不同浏览器不太一样

  • localStorage的局限性:
  • 浏览器的大小不统一,在IE8以上的IE版本才支持这个属性
  • 目前所有的浏览器中都会把localStorage的值类型限定为string类型,这个对于我们比较常见的JSON对象类型需要一些转换
  • localStorage在浏览器的隐私模式下面是不可读取的
  • localStorage本质上是对字符串的读取,如果存储内容多的话会消耗内存空间,会导致页面变卡
  • localStorage不能被爬虫抓取到

localStorage与sessionStorage的唯一一点区别就是localStorage属于永久性存储,而sessionStorage属于当会话结束的时候,sessionStorage中的键值对会被清空

4. sessionStorage

sessionStorage只是存在于一次会话中,会话结束就清除,其余与localStorage类似

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容