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 }