webStorage和cookie的區別

共同點:web

        都是保存在瀏覽器端,且同源的瀏覽器

 

cookie有什麼缺點?安全

Cookie數量和長度的限制。每一個domain最多隻能有20條cookie,每一個cookie長度不能超過4KB服務器

安全性問題。若是cookie被人攔截了,那人就能夠取得全部的session信息。cookie

區別:session

        

        一、cookie數據始終在同源的http請求中攜帶(即便不須要),即cookie在瀏覽器和服務器間來回傳遞dom

 

        二、cookie數據還有路徑(path)的概念,能夠限制。cookie只屬於某個路徑下、對象

 

        三、存儲大小限制也不一樣,cookie數據不能超過4K,同時由於每次http請求都會攜帶cookie,因此cookie只適合保存很小的數據,如回話標識。事件

 

        四、webStorage雖然也有存儲大小的限制,可是比cookie大得多,能夠達到5M或更大作用域

 

        五、數據的有效期不一樣

                        sessionStorage:僅在當前的瀏覽器窗口關閉有效;

                        localStorage:始終有效,窗口或瀏覽器關閉也一直保存,所以用做持久數據;

                        cookie:只在設置的cookie過時時間以前一直有效,即便窗口和瀏覽器關閉

 

        六、做用域不一樣

 

                        sessionStorage:不在不一樣的瀏覽器窗口中共享,即便是同一個頁面;

                        localStorage:在全部同源窗口都是共享的;

                        cookie:也是在全部同源窗口中共享的

 

 

        七、webStorage支持事件通知機制,能夠將數據更新的通知發生給監聽者

 

        八、webStorage的API藉口使用更方便 。setItem  getItem clearItem

 

 

        window。sessionStorage/window。 localStorage

        setItem(key,val)設置

        getItem(key)獲取

        webStorage。removeItem(key)刪除單個

        webStorage.clear()清除全部

 

        webStorage只能操做字符串對象,全部的存儲值都會爲字符串數據

相關文章
相關標籤/搜索