在客戶端存儲數(shù)據(jù)
HTML5 提供了兩種在客戶端存儲數(shù)據(jù)的新方法:
? localStorage - 沒有時間限制的數(shù)據(jù)存儲
? sessionStorage - 針對一個 session 的數(shù)據(jù)存儲
之前,這些都是由 cookie 完成的。但是 cookie 不適合大量數(shù)據(jù)的存儲,因為它們由每個對服務(wù)器的請求來傳遞,這使得 cookie 速度很慢而且效率也不高。
在 HTML5 中,數(shù)據(jù)不是由每個服務(wù)器請求傳遞的,而是只有在請求時使用數(shù)據(jù)。它使在不影響網(wǎng)站性能的情況下存儲大量數(shù)據(jù)成為可能。
對于不同的網(wǎng)站,數(shù)據(jù)存儲于不同的區(qū)域,并且一個網(wǎng)站只能訪問其自身的數(shù)據(jù)。
HTML5 使用 JavaScript 來存儲和訪問數(shù)據(jù)。
localStorage 方法
localStorage 方法存儲的數(shù)據(jù)沒有時間限制。第二天、第二周或下一年之后,數(shù)據(jù)依然可用。
如何創(chuàng)建和訪問 localStorage:
XML/HTML Code復(fù)制內(nèi)容到剪貼板
!DOCTYPE HTML html body script type= text/javascript localStorage.lastname= Smith document.write( Last name: + localStorage.lastname); /script /body /html
下面的例子對用戶訪問頁面的次數(shù)進行計數(shù):
XML/HTML Code復(fù)制內(nèi)容到剪貼板
!DOCTYPE HTML html body script type= text/javascript if (localStorage.pagecount) localStorage.pagecount=Number(localStorage.pagecount) +1; else localStorage.pagecount=1; document.write( Visits: + localStorage.pagecount + time(s). /script p 刷新頁面會看到計數(shù)器在增長。 /p p 請關(guān)閉瀏覽器窗口,然后再試一次,計數(shù)器會繼續(xù)計數(shù)。 /p /body /html
sessionStorage 方法
sessionStorage 方法針對一個 session 進行數(shù)據(jù)存儲。當用戶關(guān)閉瀏覽器窗口后,數(shù)據(jù)會被刪除。
如何創(chuàng)建并訪問一個 sessionStorage:
JavaScript Code復(fù)制內(nèi)容到剪貼板
!DOCTYPE HTML html body script type= text/javascript sessionStorage.lastname= Smith document.write(sessionStorage.lastname); /script /body /html
下面的例子對用戶在當前 session 中訪問頁面的次數(shù)進行計數(shù):
XML/HTML Code復(fù)制內(nèi)容到剪貼板
!DOCTYPE HTML html body script type= text/javascript if (sessionStorage.pagecount) sessionStorage.pagecount=Number(sessionStorage.pagecount) +1; else sessionStorage.pagecount=1; document.write( Visits + sessionStorage.pagecount + time(s) this session. /script p 刷新頁面會看到計數(shù)器在增長。 /p p 請關(guān)閉瀏覽器窗口,然后再試一次,計數(shù)器已經(jīng)重置了。 /p /body /html
以上就是HTML5 Web 存儲詳解的詳細內(nèi)容,其它編程語言
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。
新聞熱點
疑難解答