亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > html5指南-5.使用web storage存儲鍵值對的數(shù)據(jù)

html5指南-5.使用web storage存儲鍵值對的數(shù)據(jù)

熱門標(biāo)簽:江蘇高頻外呼系統(tǒng)線路 地圖標(biāo)注自己去過的地方 會聲會影怎樣做地圖標(biāo)注效果 電銷機(jī)器人視頻 搜狗星級酒店地圖標(biāo)注 洛陽市伊川縣地圖標(biāo)注中心官網(wǎng) 高德地圖標(biāo)注錯誤怎么修改 平頂山電子地圖標(biāo)注怎么修改 標(biāo)準(zhǔn)智能外呼系統(tǒng)
本節(jié)課的內(nèi)容是介紹web storage,使用它在瀏覽器里存儲鍵值對的數(shù)據(jù),功能上像以前的cookie一樣,不過他更好,存儲的數(shù)據(jù)可以更大。有兩種類型的web storage:local storage和session storage,他們使用相同的實(shí)現(xiàn)機(jī)制,只是可見性和生命周期不同。
1.使用local storage
我們使用localStorage對象來訪問local storage,他返回Storage對象,Storage用來存儲鍵值對的數(shù)據(jù),他有下面一些屬性和方法:
clear():清楚存儲的鍵值對數(shù)據(jù);
getItem(<key>):通過key獲取value值;
key(<index>):通過索引獲取key值;
length:返回鍵值對的個數(shù);
removeItem(<key>):通過key移出指定數(shù)據(jù);
setItem(<key>,<value>):添加一個鍵值對,當(dāng)指定key的鍵值對存在,則實(shí)現(xiàn)更新操作;
[<key>]:通過數(shù)組下標(biāo)的方式,使用key獲取指定value值。
Storage對象允許我們存儲key和value都是字符串形式的鍵值對數(shù)據(jù),key是唯一的,意味著當(dāng)我們使用setItem方法添加鍵值對時,如果key值已經(jīng)存在的話,將實(shí)現(xiàn)更新的操作。我們來看下面的例子:

復(fù)制代碼
代碼如下:

<!DOCTYPE HTML>
<html>
<head>
<title>Example</title>
<style>
body > *{float: left;}
table{border-collapse: collapse;margin-left: 50px;}
th, td{padding: 4px;}
th{text-align: right;}
input{border: thin solid black;padding: 2px;}
label{min-width: 50px;display: inline-block;text-align: right;}
#countmsg, #buttons{margin-left: 50px;margin-top: 5px;margin-bottom: 5px;}
</style>
</head>
<body>
<div>
<div>
<label>Key:</label><input id="key" placeholder="Enter Key" /></div>
<div>
<label>Value:</label><input id="value" placeholder="Enter Value" /></div>
<div id="buttons">
<button id="add">Add</button>
<button id="clear">Clear</button>
</div>
<p id="countmsg">There are <span id="count"></span>items</p>
</div>
<table id="data" border="1">
<tr>
<th>Item Count:</th>
<td id="count">-</td>
</tr>
</table>
<script>
displayData();
var buttons = document.getElementsByTagName('button');
for (var i = 0; i < buttons.length; i++) {
buttons[i].onclick = handleButtonPress;
}
function handleButtonPress(e) {
switch (e.target.id) {
case 'add':
var key = document.getElementById('key').value;
var value = document.getElementById('value').value;
localStorage.setItem(key, value);
break;
case 'clear':
localStorage.clear();
break;
}
displayData();
}
function displayData() {
var tableElement = document.getElementById('data');
tableElement.innerHTML = '';
var itemCount = localStorage.length;
document.getElementById('count').innerHTML = itemCount;
for (var i = 0; i < itemCount; i++) {
var key = localStorage.key(i);
var val = localStorage.getItem(key);
tableElement.innerHTML += '<tr><th>' + key + ':</th><td>' + val + '</td></tr>';
}
}
</script>
</body>
</html>

我們來看運(yùn)行結(jié)果


瀏覽器不能刪除我們通過localStorage創(chuàng)建的數(shù)據(jù),除非用戶刪除它。
2.監(jiān)聽Storage事件
通過local storage存儲的數(shù)據(jù)對同源的文檔具有可見性,比如你打開兩個chrome瀏覽器訪問同一個url地址,在任何一個頁面上創(chuàng)建的local storage對另外一個頁面也是可見的。但是如果用別的瀏覽器(如firefox)打開相同url地址,local storage是不可見的,因?yàn)樗麄儾煌戳恕torage事件就是用來監(jiān)聽storage的內(nèi)容發(fā)生改變的,下面我們看他包含哪些屬性:
key:返回發(fā)生改變的key值;
oldValue:返回發(fā)生改變key值以前的value值;
newValue:返回發(fā)生改變key值新的value值;
url:發(fā)生改變的url地址;
storageArea:返回發(fā)生改變的Storage對象(是local storage還是session storage)。
下面我們看個例子:

復(fù)制代碼
代碼如下:

<!DOCTYPE HTML>
<html>
<head>
<title>Storage</title>
<style>
table{border-collapse: collapse;}
th, td{padding: 4px;}
</style>
</head>
<body>
<table id="data" border="1">
<tr>
<th>key</th>
<th>oldValue</th>
<th>newValue</th>
<th>url</th>
<th>storageArea</th>
</tr>
</table>
<script>
var tableElement = document.getElementById('data');
window.onstorage = function (e) {
var row = '<tr>';
row += '<td>' + e.key + '</td>';
row += '<td>' + e.oleValue + '</td>';
row += '<td>' + e.newValue + '</td>';
row += '<td>' + e.url + '</td>';
row += '<td>' + (e.storageArea == localStorage) + '</td></tr>';
tableElement.innerHTML += row;
}
</script>
</body>
</html>

我們在例1中增刪改storage的數(shù)據(jù),會在例2頁面上顯示出來。例2在chrome瀏覽器中運(yùn)行正常,firefox沒有反應(yīng),其他瀏覽器沒有測試。
運(yùn)行結(jié)果


3.使用session storage
session storage在使用上和local storage一樣,只是他的訪問性上只限于當(dāng)前頁面,并且頁面關(guān)閉后會消失,我們通過sessionStorage來訪問它。

復(fù)制代碼
代碼如下:

<!DOCTYPE HTML>
<html>
<head>
<title>Example</title>
<style>
body > *{float: left;}
table{border-collapse: collapse;margin-left: 50px;}
th, td{padding: 4px;}
th{text-align: right;}
input{border: thin solid black;padding: 2px;}
label{min-width: 50px;display: inline-block;text-align: right;}
#countmsg, #buttons{margin-left: 50px;margin-top: 5px;margin-bottom: 5px;}
</style>
</head>
<body>
<div>
<div>
<label>Key:</label><input id="key" placeholder="Enter Key" /></div>
<div>
<label>Value:</label><input id="value" placeholder="Enter Value" /></div>
<div id="buttons">
<button id="add">Add</button>
<button id="clear">Clear</button>
</div>
<p id="countmsg">There are <span id="count"></span>items</p>
</div>
<table id="data" border="1">
<tr>
<th>Item Count:</th>
<td id="count">-</td>
</tr>
</table>
<iframe src="storage.html" width="500" height="175"></iframe>
<script>
displayData();
var buttons = document.getElementsByTagName("button");
for (var i = 0; i < buttons.length; i++) {
buttons[i].onclick = handleButtonPress;
}
function handleButtonPress(e) {
switch (e.target.id) {
case 'add':
var key = document.getElementById("key").value;
var value = document.getElementById("value").value;
sessionStorage.setItem(key, value);
break;
case 'clear':
sessionStorage.clear();
break;
}
displayData();
}
function displayData() {
var tableElement = document.getElementById('data');
tableElement.innerHTML = '';
var itemCount = sessionStorage.length;
document.getElementById('count').innerHTML = itemCount;
for (var i = 0; i < itemCount; i++) {
var key = sessionStorage.key(i);
var val = sessionStorage.getItem(key);
tableElement.innerHTML += "<tr><th>" + key + ":</th><td>" + val + "</td></tr>";
}
}
</script>
</body>
</html>

運(yùn)行效果


你在例3中做任何修改,例2的頁面不會發(fā)生任何改變。
總結(jié): 
sessionStorage用于本地存儲一個會話(session)中的數(shù)據(jù),這些數(shù)據(jù)只有在同一個會話中的頁面才能訪問并且當(dāng)會話結(jié)束后數(shù)據(jù)也隨之銷毀。因此sessionStorage不是一種持久化的本地存儲,僅僅是會話級別的存儲。
localStorage用于持久化的本地存儲,除非主動刪除數(shù)據(jù),否則數(shù)據(jù)是永遠(yuǎn)不會過期的。
web storage和cookie的區(qū)別:Web Storage的概念和cookie相似,區(qū)別是它是為了更大容量存儲設(shè)計(jì)的。Cookie的大小是受限的,并且每次你請求一個新的頁面的時候Cookie都會被發(fā)送過去,這樣無形中浪費(fèi)了帶寬,另外cookie還需要指定作用域,不可以跨域調(diào)用。除此之外,Web Storage擁有setItem,getItem,removeItem,clear等方法,不像cookie需要前端開發(fā)者自己封裝setCookie,getCookie。還有,web storage每個域(包括子域)有獨(dú)立的存儲空間,各個存儲空間是完全獨(dú)立的,因此不會造成數(shù)據(jù)混亂。
但是Cookie也是不可以或缺的:Cookie的作用是與服務(wù)器進(jìn)行交互,作為HTTP規(guī)范的一部分而存在 ,而Web Storage僅僅是為了在本地“存儲”數(shù)據(jù)而生。
源碼下載

標(biāo)簽:松原 阿克蘇 常德 鄂爾多斯 果洛 蚌埠 廣西 廣東

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《html5指南-5.使用web storage存儲鍵值對的數(shù)據(jù)》,本文關(guān)鍵詞  html5,指南,-5.,使用,web,storage,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《html5指南-5.使用web storage存儲鍵值對的數(shù)據(jù)》相關(guān)的同類信息!
  • 本頁收集關(guān)于html5指南-5.使用web storage存儲鍵值對的數(shù)據(jù)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    欧美另类videosbestsex高清| 一本伊大人香蕉高清在线观看| 欧美日本二区| 日韩男人天堂| 精品国产香蕉在线播出| 国产国语对白一级毛片| 日韩专区亚洲综合久久| 精品国产香蕉伊思人在线又爽又黄| 青草国产在线| 999久久狠狠免费精品| 精品在线视频播放| 在线观看成人网 | 精品国产一区二区三区久久久蜜臀| 久久久久久久久综合影视网| 亚飞与亚基在线观看| 国产a免费观看| 精品视频一区二区三区免费| 精品视频一区二区三区| 日韩免费在线观看视频| 成人免费观看网欧美片| 成人a级高清视频在线观看| 欧美爱色| 韩国三级一区| 国产一区免费观看| 国产一区二区精品久| 日韩免费在线观看视频| 高清一级片| 免费的黄视频| 欧美电影免费| 久久国产一久久高清| 四虎影视库| 日韩一级黄色| 国产一区二区精品久| 精品国产亚洲人成在线| 国产成人欧美一区二区三区的| 国产不卡在线播放| 中文字幕Aⅴ资源网| 久久成人亚洲| 久久精品人人做人人爽97| 亚洲女人国产香蕉久久精品 | 成人a级高清视频在线观看| 国产91丝袜在线播放0| 欧美电影免费| 日韩免费在线观看视频| 成人免费观看网欧美片| 精品视频一区二区三区| 四虎精品在线观看| 91麻豆精品国产综合久久久| 四虎久久精品国产| 亚洲 激情| 成人影院一区二区三区| 久久99爰这里有精品国产| 久久久成人影院| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 国产麻豆精品| 国产高清视频免费| 成人免费一级毛片在线播放视频| 青青青草影院| 欧美另类videosbestsex高清| 四虎影视库| 中文字幕97| a级毛片免费全部播放| 免费国产在线视频| 国产韩国精品一区二区三区| 可以免费看污视频的网站| 日韩avdvd| 一本伊大人香蕉高清在线观看| 国产亚洲男人的天堂在线观看| 久久精品欧美一区二区| 欧美国产日韩在线| 九九免费精品视频| 国产一区二区精品| 国产成+人+综合+亚洲不卡| 91麻豆精品国产自产在线| 欧美日本二区| 久久国产一区二区| 黄视频网站免费看| 香蕉视频久久| 久久99欧美| 精品视频在线看| 久久久久久久免费视频| 99热热久久| 成人免费观看男女羞羞视频 | 亚洲 国产精品 日韩| 免费的黄视频| 色综合久久天天综线观看| 四虎久久精品国产| 欧美激情一区二区三区在线播放| 免费国产在线观看| 欧美18性精品| 精品国产一区二区三区久| 精品毛片视频| 国产视频久久久| 欧美激情中文字幕一区二区| 精品视频在线看| 免费的黄视频| 午夜激情视频在线观看| 国产视频一区二区三区四区| 国产不卡福利| 欧美1卡一卡二卡三新区| 美女免费精品视频在线观看| 亚洲不卡一区二区三区在线 | 91麻豆爱豆果冻天美星空| 国产91精品一区二区| 91麻豆高清国产在线播放| 国产福利免费视频| 国产精品免费久久| 国产成人精品一区二区视频| a级精品九九九大片免费看| 亚洲 激情| 日韩中文字幕一区| 日韩中文字幕一区| 免费一级片在线观看| 亚洲天堂免费观看| 精品视频在线观看一区二区 | 亚洲女人国产香蕉久久精品| 四虎影视库| 欧美一级视| 久草免费在线视频| 国产伦精品一区三区视频| 九九久久99综合一区二区| 欧美1区| 精品视频在线观看一区二区 | 国产a视频| 精品在线免费播放| 四虎影视库国产精品一区| 国产精品自拍亚洲| 国产成人欧美一区二区三区的| 国产亚洲精品成人a在线| 免费国产在线观看| 国产综合91天堂亚洲国产| 日韩中文字幕在线亚洲一区| 999久久狠狠免费精品| 亚洲精品影院久久久久久| 精品国产亚洲人成在线| 美女免费精品视频在线观看| 国产精品免费久久| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 国产一区免费观看| 青青青草影院 | 国产成人精品在线| 国产视频一区二区在线观看| 成人在激情在线视频| 国产伦久视频免费观看 视频| 国产激情一区二区三区| 国产91精品一区| 国产不卡在线播放| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 精品国产亚洲一区二区三区| 日韩在线观看视频免费| 九九免费高清在线观看视频| 久久精品店| 日本在线www| 欧美激情一区二区三区中文字幕| 亚洲女人国产香蕉久久精品 | 99久久精品国产高清一区二区| 亚飞与亚基在线观看| 色综合久久手机在线| 一级毛片视频免费| 午夜久久网| 九九久久99| 你懂的在线观看视频| 国产高清视频免费观看| 精品国产香蕉伊思人在线又爽又黄| 亚洲天堂免费| 国产视频久久久久| 成人av在线播放| 欧美日本免费| 99色精品| 欧美激情一区二区三区在线播放| 国产a视频| 日韩一级精品视频在线观看| 日韩在线观看免费| 高清一级片| 韩国三级香港三级日本三级la| 精品久久久久久综合网| 国产91丝袜在线播放0| 国产国产人免费视频成69堂| 亚洲 欧美 91| 国产极品白嫩美女在线观看看| 国产成a人片在线观看视频| 午夜在线观看视频免费 成人| 精品国产亚一区二区三区| 美女免费黄网站| 久久精品人人做人人爽97| 中文字幕Aⅴ资源网| 成人免费高清视频| 美女免费精品视频在线观看| 韩国三级视频在线观看| 国产一区二区精品在线观看| 在线观看成人网 | 欧美电影免费| 成人高清视频在线观看| 九九久久99综合一区二区| 高清一级毛片一本到免费观看| 久久国产精品自由自在| 亚洲女人国产香蕉久久精品 | 午夜在线影院| 四虎精品在线观看| 精品国产一区二区三区国产馆|