cookie、localStorage、sessionStorage有什么区别
共同点:
三者都是保存在浏览器端,并且同源。
区别:
-
cookie数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递,而sessionStorage和localStorage不会自动把数据发送给服务器,仅在本地保存。
-
存储大小限制也不同,cookie数据不能超过4K,只适合保存很小的数据。localStorage、sessionStorage的数据可达到5M或更大,必cookie大得多。
-
作用域不同。
sessionStorage不在不同的浏览器窗口中共享,即使是同一个页面。
localStorage和cookie在所有同源窗口都是共享的。
-
数据有效期不同。
sessionStorage:仅在当前浏览器窗口关闭之前有效。
localStorage:始终有效。
cookie:只在设置的cookie过期时间之前有效。