cookie、localStorage和sessionStorage的区别
特性 | cookie | sessionStorage | localStorage |
---|---|---|---|
数据生命期 | 生成时就会被指定一个maxAge值,这就是cookie的生存周期,在这个周期内cookie有效,默认关闭浏览器失效 | 页面会话期间可用 | 除非数据被清除,否则一直存在 |
存放数据大小 | 4K左右(因为每次http请求都会携带cookie) | 一般5M或更大详细看这(需vpn上网) | |
与服务器通信 | 由对服务器的请求来传递,每次都会携带在HTTP头中,如果使用cookie保存过多数据会带来性能问题 | 数据不是由每个服务器请求传递的,而是只有在请求时使用数据,不参与和服务器的通信 | |
易用性 | cookie需要自己封装setCookie,getCookie | 可以用源生接口,也可再次封装来对Object和Array有更好的支持 | |
共同点 | 都是保存在浏览器端,和服务器端的session机制不同(这里有一篇很好的介绍cookie和session的文章) |