参考了不少篇文章,如今把所看的内容总结一下。html
长久以来,本地存储能力一直是桌面应用区别于Web应用的一个主要优点。对于桌面应用,操做系统通常都提供了一个抽象层来帮助应用程序保存其本地数据。但遗憾的是,因为一些缘由,在web的发展史上,在很长的一段时间里Cookie是惟一能够使用的在用户本地存储少许的数据的方法。一直随着现代浏览器开始支持各类各样的存储方式,Cookie的部分功能才渐渐被取代。web
优势:api
缺点:浏览器
优势:安全
缺点:cookie
sessionStorage基本上和localStorage是相同的,同属于Web Storage,返回的也都是一个Storage对象。区别在于sessionStorage在关闭浏览器或者是当前标签页(有的人说关闭tab不清空,可是规范上有写,sessionStorage 是基于browsing context来呈现的)时,存储的数据都会被清空掉。session
Cookie由于它的实现特色,因此更多的是保存让服务端能够得到的数据,保存用户的我的的用户信息,让服务端知道当前用户是谁,如保存sessionId。而localStorage则是用来服务客户端的,能够保存主题设置,用户配置的一些信息。sessionStorage更多的是像对localStorage的一个补充,能够用来保存页面的会话信息。dom