localStorage、sessionStorage和cookie的共同点: 都可以⽤来存储数据。
区别:
- 请求不同:
cookie 数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递。
sessionStorage 和 localStorage不会⾃动把数据发给服务器,仅在本地保存。
- 存储⼤⼩限制也不同:
cookie 数据不能超过4k,同时因为每次http请求都会携带cookie,所以cookie只适合保存很⼩的数据,如会
话标识。
sessionStorage 和 localStorage虽然也有存储⼤⼩的限制,但⽐cookie⼤得多,sessionStorage和
localStorage约5M 。
- 数据有效期不同:
sessionStorage:仅在当前浏览器窗⼝关闭前有效,⾃然也就不可能持久保持;
localStorage:始终有效,窗⼝或浏览器关闭也⼀直保存,因此⽤作持久数据;
cookie:只在设置的cookie过期时间之前⼀直有效,即使窗⼝或浏览器关闭。