cookies和sessionstorage和localstorage區別
阿新 • • 發佈:2019-08-29
相同點:客戶端都會儲存
不同點
不同點 | 儲存大小 | 有效時間 | 資料與伺服器互動方式 |
cookies | <=4K | 在設定cookie過期之前一直有效(無論視窗瀏覽器是否關閉) | 正常情況下,cookies資料會自動傳到伺服器,伺服器也可以寫cookie到客戶端 |
sessionstorage | 5M | 資料在當前瀏覽器關閉後刪除(sessionStorage與儲存資料的頂級視窗或瀏覽器選項卡具有相同的生命週期。) | 不會發送資料到服務端 |
localstorage | 5M | 持久儲存,瀏覽器關閉後不會丟失除非主動刪除(直到Web應用程式刪除它或使用者要求瀏覽器刪除它) | 不會發送資料到服務端 |
localstorage和sessionstorage都是H5提供的新的儲存型別,以前只有cookies來完成儲存的工作。
這兩種新方式儲存限制比使用cookie要大得多(至少5MB),而且速度更快。
資料永遠不會傳輸到伺服器,只有在客戶端特別要求時才能使用。
通過localStorage儲存的資料是永久性的:它不會過期並保留在使用者的計算機上,直到Web應用程式刪除它或使用者要求瀏覽器刪除它。
sessionStorage與儲存資料的頂級視窗或瀏覽器選項卡具有相同的生命週期。當選項卡永久關閉時,將刪除通過sessionStorage儲存的所有資料。
localStorage和sessionStorage之間關於儲存範圍的差異:兩種儲存形式都限定在文件原點,以便具有不同來源的文件永遠不會共享儲存的物件。
sessionStorage也是基於每個視窗的範圍。包含來自同一來源的文件的兩個瀏覽器選項卡具有單獨的sessionStorage資料。
與localStorage不同,來自同一源的相同指令碼在不同選項卡中開啟時無法訪問彼此的sessionStorag