相同点:

  1. 都是客户端临时信息对象
  2. 只能存储字符串类型对象

不同点:

  1. 生命周期不同,cookie可以设置过期时间,localStorage始终有效,sessionStorage在关闭窗口后失效
  2. cookie的主要内容包括:名字、值、过期时间、路径和域,有路径的概念,可以限制cookie只属于某个路径下
  3. 存储大小限制不同,cookie 4k localStorage/sessionStorage 5M
  4. cookie始终在http请求中携带,Web Storage仅在本地保存
  5. 作用域不同,sessionStorage在不同的浏览器窗口中不共享,即使是同一个页面,localStorage/cookie在所有同源的窗口中是共享的。
  6. Web Storage 有API setItem getItem removeItem clear, cookie需要自己解析
  7. document.cookie window.localStorage window.sessionStorage
  8. web storage是html5引入的,部分老旧浏览器不支持