H5本地存儲sessionStorage和localStorage的區別

sessionStorage用於本地存儲一個會話(session)中的數據,這些數據只有在同一個會話中的頁面才能訪問而且當會話結束後數據也隨之銷燬。所以sessionStorage不是一種持久化的本地存儲,僅僅是會話級別的存儲。當用戶關閉瀏覽器窗口後,數據立馬會被刪除。(特別提示:新建一個標籤頁面之後,即便跟前一個頁面的地址相同,新建標籤頁面也獲取不到前一個頁面中獲取或者設置的sessionStorage)javascript

localStorage用於持久化的本地存儲,除非主動刪除數據,不然數據是永遠不會過時的。次日、第二週或下一年以後,數據依然可用。localStorage全部頁面均可以獲取;java

 

//設置localStorage+sessionStorage
localStorage.setItem("beforeTime")
sessionStorage.setItem("beforeTime")

//讀取localStorage+sessionStorage
localStorage.getItem("beforeTime")
sessionStorage.getItem("beforeTime")

 

  

cookie:jquery-cookie插件只兼容ie+火狐;不支持google;jquery

記錄倒計時秒數能夠使用localStorage存貯當前秒數+當前推出頁面的時間;進入頁面時獲取localStorage中的值;(IE10如下不支持,能夠用cookie)瀏覽器

if (window.localStorage) {  //判斷是否支持localStorage
    localStorage.setItem("timeDaoJiShiNum", "60");
    localStorage.setItem("beforeTime", new Date().getTime());
} else {  //不支持的話使用Cookie存貯
    setCookie("timeDaoJiShiNum", "60");
    setCookie("beforeTime", new Date().getTime());
}

  操做cookies函數cookie

//寫cookies

function setCookie(name,value)
{
        var Days = 30;
        var exp = new Date();
        exp.setTime(exp.getTime() + Days*24*60*60*1000);
        document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
}

//讀取cookies
function getCookie(name)
{
        var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");

        if(arr=document.cookie.match(reg))

                return unescape(arr[2]);
        else
                return null;
}

//刪除cookies
function delCookie(name)
{
        var exp = new Date();
        exp.setTime(exp.getTime() - 1);
        var cval=getCookie(name);
        if(cval!=null)
        document.cookie= name + "="+cval+";expires="+exp.toGMTString();
}

  

轉自:http://blog.csdn.net/weixin_38788947/article/details/78294518session

相關文章
相關標籤/搜索