localstorage
,sessionstorage
和cookie
的用途都是在浏览器中存储key/value中的数据。
localstorage和sessionstorage存储数据用setItem()
,获取数据用getItem()
,单独删除数据用removeItem()
,全部删除用clear()
cookie
存储数据
window.document.cookie = 'xxx';
取出数据
document.cookie
有效期区别
localstorage
的生命周期是永久的,关闭浏览器也不会消失。
除非主动删除数据,否则数据永远不会消失
sessionstorage
的仅限当前会话有效,浏览器关闭就会被销毁。
cookie
命期为只在设置的cookie过期时间之前一直有效,哪怕是浏览器或窗口关闭。没有设置过期时间会一直有效,直到浏览器关闭被销毁
存储数据大小区别
cookie
存放数据大小为4K左右。而localstorage
和sessionstorage
存放数据大小一般为5MB甚至更高。
作用域区别
localstorage
在所有同源窗口中都是共享的.
sessionstorage
不在不同的浏览器窗口中共享.
cookie
在所有同源窗口中都是共享的.