概念
Cookie
Cookie 用于存储 web 页面的用户信息。
localStorage
localStorage 属性允许在浏览器中存储 key/value 对的数据; 用于长久保存整个网站的数据,保存的数据没有过期时间,直到手动去删除。
sessionStorage
sessionStorage 属性允许在浏览器中存储 key/value 对的数据; 该数据对象临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页之后将会删除这些数据。
异同
大小
cookie: 4K左右;localStorage: 一般为5MB;sessionStorage: 一般为5MB;
数据的生命期
cookie: 一般由服务器生成,可设置失效时间。如果在浏览器端生成Cookie,默认是关闭浏览器后失效;localStorage: 除非被清除,否则永久保存;sessionStorage: 仅在当前会话下有效,关闭页面或浏览器后被清除;
与服务器端通信
cookie: 每次都会携带在HTTP头中,如果使用cookie保存过多数据会带来性能问题;localStorage: 仅在客户端(即浏览器)中保存,不参与和服务器的通信;sessionStorage: 仅在客户端(即浏览器)中保存,不参与和服务器的通信;
