sessionStorage 和 localStorage 是HTML5 Web Storage API 提供的,能够方便的在web请求之间保存数据。有了本地数据,就能够避免数据在浏览器和服务器间没必要要地来回传递。web
都是保存在浏览器端,且同源的。api
存储大小限制不一样。cookie 数据不能超过4k,同时由于每次http请求都会携带 cookie,因此 cookie 只适合保存很小的数据,如会话标识。sessionStorage 和 localStorage 虽然也有存储大小的限制,但比 cookie 大得多,能够达到5M或更大。浏览器
数据有效期不一样。sessionStorage:仅在当前浏览器窗口关闭前有效,天然也就不可能持久保持;localStorage:始终有效,窗口或浏览器关闭也一直保存,所以用做持久数据;cookie只在设置的 cookie 过时时间以前一直有效,即便窗口或浏览器关闭。服务器
做用域不一样。sessionStorage 不在不一样的浏览器窗口中共享,即便是同一个页面;localStorage 在全部同源窗口中都是共享的;cookie 也是在全部同源窗口中都是共享的。cookie
cookie 数据有路径(path)的概念,能够限制 cookie 只属于某个路径下。session
Web Storage 支持事件通知机制,能够将数据更新的通知发送给监听者。spa
Web Storage 的 api 接口使用更方便。接口