web storage

web storage

Web Storage實際上由兩部分組成:sessionStorage與localStorage 。 sessionStorage用於本地存儲一個會話(session)中的數據,這些數據只有在同一個會話中的頁面才能訪問並且當會話結束後數據也隨之銷毀。因此sessionStorage不是一種持久化的本地存儲,僅僅是會話級別的存儲。 localStorage用於持久化的本地存儲,除非主動刪除數據,否則數據是永遠不會過期的。

背景

兼容性測試結果表 兼容性測試結果表

Web套用的發展,使得客戶端存儲使用得也越來越多,而實現客戶端存儲的方式則是多種多樣。最簡單而且兼容性最佳的方案是Cookie,但是作為真正的客戶端存儲,Cookie則存在很多致命傷。此外,在IE6及以上版本中還可以使用user Data Behavior、在Firefox下可以使用global Storage、在有Flash外掛程式的環境中可以使用Flash Local Storage,但是這幾種方式都存在兼容性方面的局限性,因此真正使用起來並不理想。

針對以上情況,HTML5中給出了更加理想的解決方案:假如你需要存儲複雜的數據則可以使用Web Database,可以像客戶端程式一樣使用SQL(不過Web Database標準當前正陷於僵局之中,而且目前已經實現的瀏覽器很有限);假如你需要存儲的只是簡單的用key/value對即可解決的數據則可以使用Web Storage。

優勢

存儲空間

存儲空間 更大:IE8下每個獨立的存儲空間為10M,其他瀏覽器實現略有不同,但都比Cookie要大很多。

伺服器

存儲內容不會傳送到伺服器:當設定了Cookie後,Cookie的內容會隨著請求一併傳送的伺服器,這對於本地存儲的數據是一種頻寬浪費。而Web Storage中的數據則僅僅是存在本地,不會與伺服器發生任何互動。

接口

更多豐富易用的接口:Web Storage提供了一套更為豐富的接口,使得數據操作更為簡便。

存儲空間

獨立的存儲空間:每個域(包括子域)有獨立的存儲空間,各個存儲空間是完全獨立的,因此不會造成數據混亂。

相關詞條

熱門詞條

聯絡我們