localStorage和sessionStorage

localStorage用於持久化的本地存儲,除非主動刪除數據,不然數據是永遠不會過時的。ios

sessionStorage生命週期爲當前窗口或標籤頁,一旦窗口或標籤頁被永久關閉了,那麼全部經過sessionStorage存儲的數據也就被清空了。所以sessionStorage不是一種持久化的本地存儲,僅僅是會話級別的存。瀏覽器

不一樣瀏覽器沒法共享localStorage或sessionStorage中的信息。相同瀏覽器的不一樣頁面間能夠共享相同的localStorage(頁面屬於相同域名和端口),可是不一樣頁面或標籤頁間沒法共享sessionStorage的信息。這裏須要注意的是,頁面及標籤頁僅指頂級窗口,若是一個標籤頁包含多個iframe標籤且他們屬於同源頁面,那麼他們之間是能夠共享sessionStorage的。session


localStorage和sessionStorage使用時使用相同的API:spa

localStorage.setItem("key","value");//以「key」爲名稱存儲一個值「value」調試

localStorage.getItem("key");//獲取名稱爲「key」的值生命週期

也可直接寫localStroage.key得到"key"的值rem


枚舉localStorage的方法:get

for(var i=0;i<localStorage.length;i++){iframe

     var name = localStorage.key(i);域名

     var value = localStorage.getItem(name);

}

刪除localStorage中存儲信息的方法:

localStorage.removeItem("key");//刪除名稱爲「key」的信息。

localStorage.clear();//清空localStorage中全部信息


localStorage和sessionStorage使用時使用相同的API。只是在工做中由此發現程序在ios手機中的qq瀏覽器中運行有異常,而在safari瀏覽器中正常。調試發現sessionStorage在qq瀏覽器中失去做用。後改用localStorage後達到預期效果。

相關文章
相關標籤/搜索