h5本地存儲storage

storage本地存儲,彷佛有點想起cookie,的確用法也相似於cookie。可是storage較cookie有很多好處:api

存儲量大;在客戶端完成,不會請求客戶端;cookie

storage分爲sessionStorage和localStorage。session

1.sessionStorage  臨時存儲,當頁面關閉的時候,本地存儲也就消失。而且sessionStorage的數據是不會共享的。url

2.localStorage 永久刪除,能夠手動刪除數據,數據是共享的。spa

storage下有如下api:code

window.sessionStorage和window.localStorage有如下4個方法:對象

setItem(): 設置數據,key\value類型,類型都是字符串 能夠用獲取屬性的形式操做blog

getItem(): 獲取數據,經過key來獲取到相應的value removeItem():事件

刪除數據,經過key來刪除相應的valuerem

clear(): 刪除所有存儲的值。用法以下:

window.localStorage.getItem('name')

存儲事件:

當數據有修改或刪除的狀況下,就會觸發storage事件。不過,在對數據進行改變的窗口對象上是不會觸發的,也就是說有兩個及兩個以上的窗口,當有數據改變的時候,除了本身本窗口意外的其餘窗口對象都會觸發storage事件。

該事件的event對象下有如下屬性:

Key : 修改或刪除的key值,若是調用clear(),key爲null

newValue : 新設置的值,若是調用removeStorage(),key爲null

oldValue : 調用改變前的value值

storageArea : 當前的storage對象

url : 觸發該腳本變化的文檔的url

以下:

window.addEventListener('storage',function(ev){  //當前頁面的事件不會觸
        
        console.log( ev.key );
        console.log( ev.newValue );
        console.log( ev.oldValue );
        console.log( ev.storageArea );
        console.log( ev.url );
        
    },false);
相關文章
相關標籤/搜索