1. 程式人生 > 其它 >cookies、sessionStorage和localStorage的區別

cookies、sessionStorage和localStorage的區別

cookies、sessionStorage和localStorage的區別

對比

特性 Cookie LocalStorage SessionStorage
資料的生命週期                            可設定失效時間,預設是關閉瀏覽器後失效 除非被清除,否則永久儲存                                 僅在當前會話下有效,關閉頁面或者瀏覽器後被清除
存放資料大小   約4KB 約5MB 約5MB
與伺服器端通訊 每次都會攜帶在HTTP頭中,如果使用cookie儲存過多資料會帶來效能問題 僅在瀏覽器)中儲存,不參與和伺服器的通訊 僅在瀏覽器)中儲存,不參與和伺服器的通訊
易用性   需要程式設計師自己封裝,源生的Cookie介面不友好 源生介面可以接受,亦可再次封裝來對Object和Array有更好的支援 源生介面可以接受,亦可再次封裝來對Object和Array有更好的支援

Cookie應用場景

考慮到每個 HTTP 請求都會帶著 Cookie 的資訊,所以 Cookie 當然是能精簡就精簡!

Cookie比較常用的一個應用場景就是判斷使用者是否登入

針對登入過的使用者,伺服器端會在他登入時往 Cookie 中加入一段加密過的唯一辨識單一使用者的辨識碼,下次只要讀取這個值就可以判斷當前使用者是否登入了

LocalStorage應用場景

LocalStorage 接替了 Cookie 管理電商網站購物車的工作

LocalStorage 也用來儲存HTML5遊戲產生的一些本地資料

SessionStorage應用場景

SessionStorage 一般用來處理一些內容特別多的表單,可以把表單頁面拆分成多個子頁面,然後按步驟引導使用者填寫