介绍:网络早期最大的问题之一是如何管理状态。简而言之,服务器无法知道两个请求是否来自同一个浏览器。当时最简单的方法是在请求时,在页面中插入一些参数,并在下一个请求中传回参数,于是乎前端存储也就应运而生。
cookie :
cookie可以说是一代元老级别的前端存储方式。cookie他是纯文本,就是专门来存储数据的当用户访问某些网站的时候你可以看到有很多的提示让你同意cookie存储数据的选项。简单来说就是当用户访问了某个网站(网页)的时候,我们就可以通过cookie来向访问者电脑上存储数据,或者某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密)
cookie有什么特征呢?
1.他是唯一的,在不同的浏览器里面cookie的位置是不一样的且不能同时使用。
2.他是独立的,cookie的存储是以域名形式进行区分的,不同的域名下存储的cookie是独立存在。
3.每个cookie存放的内容大小也是有限制的,不同的浏览器存放大小不一样,一般为4KB。
4.cookie也可以设置过期的时间,默认是会话结束的时候。
5.cookie的数据会在每一次发送http请求的时候,同时发送给服务器
sessionStorage:
1.他不是一个持久化的本地存储。是一个会话级别的存储,也就是说只要这个浏览器窗口没有关闭,即使刷新页面或进入同源另一页面,数据仍然存在。
2.关闭窗口后,sessionStorage即被销毁,或者在新窗口打开同源的另一个页面,sessionStorage也是没有的。
3.sessionStorage比localStorage更严苛一点,除了协议、主机名、端口外,还要求在同一窗口(也就是浏览器的标签页)下。
localStorage:
1.他是永久行存储,除非手动删除
2.只要在相同的协议、相同的主机名、相同的端口下,就能读取/修改到同一份localStorage数据。
3.localStorage也是一个本地存储,会话级别的存储
indexedDB关于这个本人也是了解不多只知道 indexedDB 是一种低级API,用于客户端存储大量结构化数据(包括, 文件/ blobs)。该API使用索引来实现对该数据的高性能搜索。
希望本人讲述对正在奋斗路上的你有所帮助。