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

17站長網(wǎng)

17站長網(wǎng) 首頁 編程教程 Html5教程 查看內(nèi)容

HTML5 Web 存儲(chǔ)

在客戶端存儲(chǔ)數(shù)據(jù)

html5 提供了兩種在客戶端存儲(chǔ)數(shù)據(jù)的新方法:

localStorage - 沒有時(shí)間限制的數(shù)據(jù)存儲(chǔ)
sessionStorage - 針對(duì)一個(gè) session 的數(shù)據(jù)存儲(chǔ)

之前,這些都是由 cookie 完成的。但是 cookie 不適合大量數(shù)據(jù)的存儲(chǔ),因?yàn)樗鼈冇擅總(gè)對(duì)服務(wù)器的請(qǐng)求來傳遞,這使得 cookie 速度很慢而且效率也不高。

在 html5 中,數(shù)據(jù)不是由每個(gè)服務(wù)器請(qǐng)求傳遞的,而是只有在請(qǐng)求時(shí)使用數(shù)據(jù)。它使在不影響網(wǎng)站性能的情況下存儲(chǔ)大量數(shù)據(jù)成為可能。

對(duì)于不同的網(wǎng)站,數(shù)據(jù)存儲(chǔ)于不同的區(qū)域,并且一個(gè)網(wǎng)站只能訪問其自身的數(shù)據(jù)。

HTML5 使用 JavaScript 來存儲(chǔ)和訪問數(shù)據(jù)。

什么是 HTML5 Web 存儲(chǔ) ?

我們可以使用 HTML5 在用于的瀏覽器上存儲(chǔ)用戶的瀏覽數(shù)據(jù)

在 HTML5 之前,本地存儲(chǔ)使用的是 Cookie

但是 Web 存儲(chǔ)需要更加的安全與快速. 這些數(shù)據(jù)不會(huì)被保存在服務(wù)器上,但是這些數(shù)據(jù)只用于用戶請(qǐng)求網(wǎng)站數(shù)據(jù)上

它也可以存儲(chǔ)大量的數(shù)據(jù),而不影響網(wǎng)站的性能

數(shù)據(jù)以 鍵/值 對(duì)存在,web 網(wǎng)頁的數(shù)據(jù)只允許該網(wǎng)頁訪問使用

localStorage 方法

localStorage 方法存儲(chǔ)的數(shù)據(jù)沒有時(shí)間限制。第二天、第二周或下一年之后,數(shù)據(jù)依然可用。

如何創(chuàng)建和訪問 localStorage:

實(shí)例

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

下面的例子對(duì)用戶訪問頁面的次數(shù)進(jìn)行計(jì)數(shù):

實(shí)例

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

常用的有如下幾個(gè)

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

sessionStorage 方法

sessionStorage 方法針對(duì)一個(gè) session 進(jìn)行數(shù)據(jù)存儲(chǔ)。當(dāng)用戶關(guān)閉瀏覽器窗口后,數(shù)據(jù)會(huì)被刪除。

如何創(chuàng)建并訪問一個(gè) sessionStorage:

實(shí)例

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

下面的例子對(duì)用戶在當(dāng)前 session 中訪問頁面的次數(shù)進(jìn)行計(jì)數(shù):

實(shí)例

<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 開發(fā)一個(gè)簡(jiǎn)單的網(wǎng)站列表程序

接下來我們使用 Web Storage 來開發(fā)一個(gè)簡(jiǎn)單的網(wǎng)站列表程序,它包含以下功能

  1. 可以輸入網(wǎng)站名,網(wǎng)址,以網(wǎng)站名作為 key 存入 localStorage

  2. 根據(jù)網(wǎng)站名,查找網(wǎng)址;

  3. 列出當(dāng)前已保存的所有網(wǎng)站

下面的代碼用于保存數(shù)據(jù)

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

下面的代碼用于查找數(shù)據(jù)

//查找數(shù)據(jù)  
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 + "的網(wǎng)址是:" + sitename;  
}

完整的代碼如下

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

這個(gè)范例知識(shí)簡(jiǎn)單的演示了下 localStorage 存儲(chǔ)與查找,更多情況下我們存儲(chǔ)的數(shù)據(jù)會(huì)更復(fù)雜

接下來我們使用 jsON.stringify 來存儲(chǔ)對(duì)象數(shù)據(jù)
jsON.stringify 可以將對(duì)象轉(zhuǎn)換為字符串

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

然后再使用 JSON.parse 方法將字符串轉(zhuǎn)換為 JSON 對(duì)象

var site = JSON.parse(str);

save() 方法

//保存數(shù)據(jù)  
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); // 將對(duì)象轉(zhuǎn)換為字符串
    localStorage.setItem(site.keyname,str);  
    alert("保存成功");
}

find() 方法

//查找數(shù)據(jù)  
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 + "的網(wǎng)站名是:" + site.sitename + ",網(wǎng)址是:" + 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">網(wǎng)站名:</label>  
    <input type="text" id="sitename" name="sitename" class="text"/>  
    <br/>  
    <label for="siteurl">網(wǎng) 址:</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="查找網(wǎng)站"/>  
    <p id="find_result"><br/></p>  
</div>

范例中的 loadAll 輸出了所有存儲(chǔ)的數(shù)據(jù),我們需要確保 localStorage 存儲(chǔ)的數(shù)據(jù)都為 JSON 格式,否則 JSON.parse(str) 將會(huì)報(bào)錯(cuò)。

返回頂部
主站蜘蛛池模板: 国产90后美女露脸在线观看 | 女人被狂躁视频网站免费 | 青青青草网站免费视频在线观看 | 亚洲欧美v视色一区二区 | 玖玖国产在线观看 | 精品樱空桃一区二区三区 | 视频在线一区 | 欧美黄色大片免费观看 | 国产白拍 | 亚洲综合国产 | 日韩美女专区中文字幕 | 91精品国产薄丝高跟在线看 | 国产欧美日韩亚洲精品区2345 | 一区二区三区精品国产欧美 | 亚洲国产第一区二区香蕉 | 久久99精品久久久久久久不卡 | 奇米欧美 | 国产曰批的免费视频 | 国产欧美精品国产国产专区 | 国内小情侣一二三区在线视频 | 美女免费观看一区二区三区 | 日鲁夜鲁天天鲁视频 | 中日韩一区二区三区 | 一级毛片不收费 | 99久久久国产精品免费牛牛四川 | 欧美 日本 国产 | 伊人色综合久久天天网蜜月 | 1819高清欧美xx| 国产精品免费看久久久香蕉 | 国产做人爱三级视频在线 | 在线日韩国产 | 无毒不卡在线观看 | 欧美毛片在线观看 | 日本在线日本中文字幕日本在线视频播放 | 国产精品一二三 | 国产久| 日韩在线视频免费播放 | 亚洲一区二区三区夜色 | 青青青国产依人在线视频97 | 亚洲精品一区二区乱码在线观看 | 国产午夜精品理论片久久影视 |