1、Web Storage与cookies的比较html
cookie:保存在浏览器端的信息,能够在有限期内持久化地存储少许的数据,可是也有必定的局限:html5
1.每一次HTTP请求都会发送cookie信息。这样一次又一次无心义地传输一样的数据,占用了用户带宽。web
2.每一次HTTP请求中发送的cookie信息都以未加密的形式在因特网上传输,这样很不安全(除非整个Web应用都是基于SSL的)。浏览器
3.Cookie信息量最大不能超过4KB,这足以拖慢Web应用。安全
可是Cookie默认的各类浏览器都支持,相比而言webStorage则是IE7及如下版本不支持,其实webStorage的支持范围仍是足够大的。服务器
Web Storage(又分为sessionStorage和localStorage):cookie
与Cookie相比,Web Storage的优点有如下几点:session
1.存储空间更大,每一个存储域拥有5MB的空间,这个大小在各浏览器可贵的一致。并发
2.存储内容不会发送到服务器,仅仅存在于本地,不会与服务器发生任何交互,而Cookie的内容会随着请求一并发送给服务器。加密
3.更多丰富易用的接口,并且基于键值对的形式存储,存储和检索数据都是经过指定的键名,提供了setItem,getItem,removeItem和clear四个基本操做,分别对应存储value、读取value、删除key和清除全部的键值。此外还有storage事件,当键值改变或者clear的时候就能够出发storage事件。
此外sessionStorage和localStorage的区别在于,在有效期上,sessionStorage的内容仅在当前的浏览器窗口关闭前有效,而localStorage则是始终有效,窗口或浏览器关闭也一直保存,能够做持久数据;在做用域上,sessionStorage不在不一样的浏览器窗口中共享,即便是同一个页面,而localStorage在全部同源窗口中都是共享的。
补充:
1.判断浏览器是否支持localStorage的方法:
1 function support_html5_storage() { 2 return ('localStorage' in window) && window['localStorage'] !== null; 3 }
或者
1 if(window.localStorage) { 2 //do something with localStorage 3 } else { 4 alert("浏览器不支持localStorage!"); 5 }