请描述一下cookies,sessionStorage和localStorage的区别

112 阅读1分钟

sessionStorage: 用于临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页之后将会删除这些数据;

localStorage: 用于长久保存整个网站的数据,保存的数据没有过期时间,直到手动去删除;

Cookie:一个请求首部,其中含有先前由服务器通过 Set-Cookie 首部投放并存储到客户端的 HTTP cookies。

区别:

1.cookie数据始终在同源的http请求中携带,而sessionStorage和localStorage不会自动把数据发送给服务器,仅在本地保存

2.存储大小的限制不同:cookie数据不能超过4k,sessionStorage和localStorage虽然也有储存大小的限制,但是比cookie大得多

3.数据有效期不同:

sessionStorage:仅在当前浏览器窗口关闭之前有效

localStorage:始终有效,窗口和浏览器关闭也一直保存着,用作持久数据

cookie:只在设置的cookie过期时间之前有效,即使浏览或窗口关闭


4.作用域不同:

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

localStorage:在所有同源窗口中都是共享的

cookie:在所有同源窗口中都是共享的