cookie、sessionStorage和localStorage的区别
共同点:都是保存在浏览器端,且是同源的。
注:如果两个 URL 的 protocol、port (如果有指定的话)和 host 都相同的话,则这两个 URL 是同源
区别:
cookie是为了标识用户身份而存储在用户本地终端上的数据,始终在同源http请求中携带,即cookie在浏览器和服务器间来回传递,而sessionstorage和localstorage不会自动把数据发给服务器,仅在本地保存。
类别 | 存储大小的限制 | 数据的有效期 | 作用域 |
---|---|---|---|
cookie | 保存的数据很小,不能超过4k | 在设置的cookie过期时间之前一直有效,即使窗口或者浏览器关闭 | 通过domain文档源和path文档路径来确定 (默认情况下,cookie和创建它的web页面有关,并对web页面和该web页面同目录或者子目录的其他web页面可见。当设置path="/",它的作用域就变成同源都可共享) |
sessionstorage | 保存的数据大,可达到5M | 仅在浏览器窗口关闭之前有效 | 同源且要是同一标签页中,才可共享(不同的浏览器之间不共享) |
localstorage | 保存的数据大,可达到5M | 始终有效,窗口和浏览器关闭也一直保存,用作长久数据保存(除非主动删除数据) | 在所有同源窗口都是共享 (不同的浏览器之间不共享) |
————————————————
参考链接:https://blog.csdn.net/caseywei/article/details/81105544