精品免费在线观看-精品欧美-精品欧美成人bd高清在线观看-精品欧美高清不卡在线-精品欧美日韩一区二区

17站長網

17站長網 首頁 編程教程 Html5教程 查看內容

HTML5 Web 存儲

在客戶端存儲數據

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

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

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

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

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

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

什么是 HTML5 Web 存儲 ?

我們可以使用 HTML5 在用于的瀏覽器上存儲用戶的瀏覽數據

在 HTML5 之前,本地存儲使用的是 Cookie

但是 Web 存儲需要更加的安全與快速. 這些數據不會被保存在服務器上,但是這些數據只用于用戶請求網站數據上

它也可以存儲大量的數據,而不影響網站的性能

數據以 鍵/值 對存在,web 網頁的數據只允許該網頁訪問使用

localStorage 方法

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

如何創建和訪問 localStorage:

實例

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

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

實例

<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>

常用的有如下幾個

說明localStoragesessionStorage
保存數據localStorage.setItem(key,value)sessionStorage.setItem(key,value)
讀取數據localStorage.getItem(key)sessionStorage.getItem(key)
刪除單個數據localStorage.removeItem(key)sessionStorage.removeItem(key)
刪除所有數據localStorage.clear()sessionStorage.clear()
得到某個索引的 keylocalStorage.key(index)sessionStorage.key(index)
提示: 鍵/值對通常以字符串存儲,當然了,我們可以按自己的需要轉換該格式

sessionStorage 方法

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

如何創建并訪問一個 sessionStorage:

實例

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

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

實例

<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>

Web Storage 開發一個簡單的網站列表程序

接下來我們使用 Web Storage 來開發一個簡單的網站列表程序,它包含以下功能

  1. 可以輸入網站名,網址,以網站名作為 key 存入 localStorage

  2. 根據網站名,查找網址;

  3. 列出當前已保存的所有網站

下面的代碼用于保存數據

//保存數據  
function save(){  var siteurl = document.getElementById("siteurl").value;  var sitename = document.getElementById("sitename").value;  
    localStorage.setItem(sitename,siteurl);
    alert("添加成功");
}

下面的代碼用于查找數據

//查找數據  
function find(){  
    var search_site = document.getElementById("search_site").value;  
    var sitename = localStorage.getItem(search_site);  
    var find_result = document.getElementById("find_result");  
    find_result.innerHTML = search_site + "的網址是:" + sitename;  
}

完整的代碼如下

<div style="border: 2px dashed #ccc;width:320px;text-align:center;">     
    <label for="sitename">網站名(key):</label>  
    <input type="text" id="sitename" name="sitename" class="text"/>  
    <br/>  
    <label for="siteurl">網 址(value):</label>  
    <input type="text" id="siteurl" name="siteurl"/>  
    <br/>  
    <input type="button" onclick="save()" value="新增記錄"/>  
    <hr/>  
    <label for="search_site">輸入網站名:</label>  
    <input type="text" id="search_site" name="search_site"/>  
    <input type="button" onclick="find()" value="查找網站"/>  
    <p id="find_result"><br/></p>  
</div>

這個范例知識簡單的演示了下 localStorage 存儲與查找,更多情況下我們存儲的數據會更復雜

接下來我們使用 jsON.stringify 來存儲對象數據
jsON.stringify 可以將對象轉換為字符串

var site = new Object;
...
var str = JSON.stringify(site); // 將對象轉換為字符串

然后再使用 JSON.parse 方法將字符串轉換為 JSON 對象

var site = JSON.parse(str);

save() 方法

//保存數據  
function save(){  
    var site = new Object;
    site.keyname = document.getElementById("keyname").value;
    site.sitename = document.getElementById("sitename").value;  
    site.siteurl = document.getElementById("siteurl").value;
    var str = JSON.stringify(site); // 將對象轉換為字符串
    localStorage.setItem(site.keyname,str);  
    alert("保存成功");
}

find() 方法

//查找數據  
function find(){  
    var search_site = document.getElementById("search_site").value;  
    var str = localStorage.getItem(search_site);  
    var find_result = document.getElementById("find_result");
    var site = JSON.parse(str);  
    find_result.innerHTML = search_site + "的網站名是:" + site.sitename + ",網址是:" + site.siteurl;  
}

完整的代碼如下

<div style="border: 2px dashed #ccc;width:320px;text-align:center;">
    <label for="keyname">別名(key):</label>  
    <input type="text" id="keyname" name="keyname" class="text"/>  
    <br/>  
    <label for="sitename">網站名:</label>  
    <input type="text" id="sitename" name="sitename" class="text"/>  
    <br/>  
    <label for="siteurl">網 址:</label>  
    <input type="text" id="siteurl" name="siteurl"/>  
    <br/>  
    <input type="button" onclick="save()" value="新增記錄"/>  
    <hr/>  
    <label for="search_site">輸入別名(key):</label>  
    <input type="text" id="search_site" name="search_site"/>  
    <input type="button" onclick="find()" value="查找網站"/>  
    <p id="find_result"><br/></p>  
</div>

范例中的 loadAll 輸出了所有存儲的數據,我們需要確保 localStorage 存儲的數據都為 JSON 格式,否則 JSON.parse(str) 將會報錯。

返回頂部
主站蜘蛛池模板: 婷婷月 | 国产精品主播视频 | 亚洲精品区 | 国产最强大片免费视频 | 国产三区视频在线观看 | 欧美a欧美1级 | 91精品啪在线观看国产日本 | 久久一二 | 成年女人免费视频播放77777 | 欧美综合国产 | 黄色免费观看 | 亚洲 欧美 日韩 在线 香蕉 | 一级一毛片a级毛片欧美 | 一级特黄性生活大片免费观看 | 国产欧美日韩不卡 | 在线精品国内视频秒播 | 国产区精品高清在线观看 | 国产精品线在线精品国语 | 国产精品免费入口视频 | 99re在线播放 | 国产a级特黄的片子视频免费 | 欧美黄色片在线观看 | 国产一区二区高清 | 久久精彩 | 国产91香蕉 | 国产精品无码久久av | 日韩欧美中文字幕在线视频 | 国产精品玖玖玖影院 | 在线观看视频一区二区 | 92精品国产自产在线观看48页 | 成人18在线观看 | 国产成人爱片免费观看视频 | 二级特黄绝大片免费视频大片 | 综合亚洲欧美日韩一区二区 | 蜜桃臀在线成人亚洲 | 欧美二区在线观看 | 亚洲第一二三四区 | 日本一区二区三区高清福利视频 | 在线日本妇人成熟免费观看 | 成人国产mv免费视频 | 一级毛片免费视频 |