本地數據存儲的不同兩種方式sessionStorage、localStorage,用法及其區別

1.sessionStorage

   通過此對象可以直接操作存儲在瀏覽器中的會話級別的WebStorage。存儲在sessionStorage中的數據首先是Key-Value形式的,另外就是它跟瀏覽器當前會話相關,當會話結束後,數據會自動清除,跟未設置過期時間的Cookie類似。就是說:瀏覽器被關閉或者是標籤頁關閉,sessionStorage就會被自動清除。但是如果只是刷新頁面或是前進或後退,不會被清除。

無論是 localStorage 還是 sessionStorage 中保存的數據都僅限於該頁面的協議。

  基本用法:

    (1)setItem(key,value):添加本地存儲數據。 
    (2)getItem(key):通過key獲取相應的Value。 
    (3)removeItem(key):通過key刪除本地數據。 

    (4)clear():清空數據。

要注意的是,操作sessionStorage,存儲的key value值是以字符串的形式。上面的方法接收的參數都應該是字符串形式。

特性:

   1.sessionStorage的存儲空間更大,cookie是有4k,而sessionStorage一般有4M,不同瀏覽器有區別。

    2.不會再每次請求時都發往服務器。這個也是區別於cookie,cookie在客戶端向服務器發送請求時會自動把自己也發出去。

   3.每個窗口的sessionStorage都是獨立的。只會隨窗口的關閉而清除。不同窗口之間的sessionStorage不共享

   4.再次使用setItem設置已經存在的key的value時,新的值將替代舊的值。

二、localStorage

localStorage存儲的數據是永久保存的。且不會自動發送到服務器,存儲空間4M以上。

  用法:跟sessionStorage一樣。

特性:除了上面提到的三個以外,還有

  1.對於某一個域下來說,local storage是共享的(多個窗口共享一個“localStorage”,前提是不跨域)

  2.localStorage用於持久化的本地存儲,除非主動刪除數據,否則數據是永遠不會過期的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章