close

html5.jpg

在客戶端存儲數據

HTML5 提供了兩種在客戶端存儲數據的新方法:

  • localStorage - 沒有時間限制的數據存儲
  • sessionStorage - 針對一個session 的數據存儲

之前,這些都是由cookie 完成的。但是cookie 不適合大量數據的存儲,因為它們由每個對服務器的請求來傳遞,這使得cookie 速度很慢而且效率也不高。

在HTML5 中,數據不是由每個服務器請求傳遞的,而是只有在請求時使用數據。它使在不影響網站性能的情況下存儲大量數據成為可能。

對於不同的網站,數據存儲於不同的區域,並且一個網站只能訪問其自身的數據。

HTML5 使用JavaScript 來存儲和訪問數據。


localStorage 方法

localStorage 方法存儲的數據沒有時間限制。第二天、第二週或下一年之後,數據依然可用。

如何創建和訪問localStorage:

實例

<script type="text/javascript">
 <code>localStorage.lastname="Smith";</code> 
document.write( <code>localStorage.lastname</code> );
</script>
	

下面的例子對用戶訪問頁面的次數進行計數:

實例

<script type="text/javascript">
if ( <code>localStorage.pagecount</code> )
  {
  localStorage.pagecount=Number( <code>localStorage.pagecount</code> ) +1;
  }
else
  {
  <code>localStorage.pagecount</code> =1;
  }
document.write("Visits "+ <code>localStorage.pagecount</code> + " time(s).");
</script>
	

sessionStorage 方法

sessionStorage 方法針對一個session 進行數據存儲。當用戶關閉瀏覽器窗口後,數據會被刪除。

如何創建並訪問一個sessionStorage:

實例

<script type="text/javascript">
 <code>sessionStorage.lastname="Smith";</code> 
document.write( <code>sessionStorage.lastname</code> );
</script>
	

下面的例子對用戶在當前session 中訪問頁面的次數進行計數:

實例

<script type="text/javascript">
if ( <code>sessionStorage.pagecount</code> )
  {
  sessionStorage.pagecount=Number( <code>sessionStorage.pagecount</code> ) +1;
  }
else
  {
  <code>sessionStorage.pagecount</code> =1;
  }
document.write("Visits "+ <code>sessionStorage.pagecount</code> +" time(s) this session.");
</script>
	
arrow
arrow

    設計密碼工作室 發表在 痞客邦 留言(0) 人氣()