sessionStorage屬性允許你訪問一個 sessionStorage對象。它與localStorage相似,不同之處在於 localStorage 裏面存儲的數據沒有過期時間設置,而存儲在 sessionStorage 裏面的數據在頁面會話結束時會被清除。頁面會話在瀏覽器打開期間一直保持,並且重新加載或恢復頁面仍會保持原來的頁面會話。在新標籤或窗口打開一個頁面會初始化一個新的會話,這點和 session cookies 的運行方式不同。
應該注意的是,無論是 localStorage 還是 sessionStorage 中保存的數據都僅限於該頁面的協議。
// 保存數據到sessionStorage
sessionStorage.setItem('key', 'value');
sessionStorage.setItem("key",JSON.stringify(viewProData)); 存儲對象
var objDetails =JSON.parse(sessionStorage.getItem("key")); 獲取對象
// 從sessionStorage獲取數據
var data = sessionStorage.getItem('key');
// 從sessionStorage刪除保存的數據
sessionStorage.removeItem('key');
// 從sessionStorage刪除所有保存的數據
sessionStorage.clear();
localStorage
localStorage生命週期是永久,這意味着除非用戶顯示在瀏覽器提供的UI上清除localStorage信息,否則這些信息將永遠存在。存放數據大小爲一般爲5MB,而且它僅在客戶端(即瀏覽器)中保存,不參與和服務器的通信。
sessionStorage
sessionStorage僅在當前會話下有效,關閉頁面或瀏覽器後被清除。存放數據大小爲一般爲5MB,而且它僅在客戶端(即瀏覽器)中保存,不參與和服務器的通信。源生接口可以接受,亦可再次封裝來對Object和Array有更好的支持。
localStorage和sessionStorage使用時使用相同的API:
localStorage.setItem("key","value");//以“key”爲名稱存儲一個值“value”localStorage.getItem("key");//獲取名稱爲“key”的值localStorage.removeItem("key");//刪除名稱爲“key”的信息。localStorage.clear();//清空localStorage中所有信息