Web存储
两种方式
- localStorage:没有时间限制的数据存储
- sessionStorage:针对一个session的数据存储
与cookie的对比
- cookie不适合大量数据的存储,因为它们由每个服务器的请求来传递,这使得cookie速度慢而且效率也不高
localStorage
- localStorage 方法存储的数据没有时间限制。也就是说,数据不清空的话,一直可以使用。
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>localStroge</title>
<script src="app.js"></script>
</head>
<body>
<textarea style="width: 200px; height: 200px;" id ="ta" ></textarea>
<button id="btn">save</button>
</body>
</html>
app.js
var ta;
var btn;
window.onload = function(){
ta = document.getElementById("ta");
if(localStorage.text){
ta.value = localStorage.text;
}
btn = document.getElementById("btn");
//onclick btn的点击事件
btn.onclick = function(){
//alert(ta.value);
localStorage.text = ta.value;
}
}
以上是简单的实现HTML5的新特性Web存储localStorage
sessionStorage
- sessionStorage:针对一个session进行数据存储。当用户关闭浏览器窗口后,数据会被删除。
实现代码
sessionStorage.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>WebSessionStroge</title>
<script src="sessionapp.js"></script>
</head>
<body>
<span id="txt">0</span>
<button id="addbtn">Add</button>
</body>
</html>
sessionapp.js
var num = 0;
var txt;
window.onload = function(){
txt = document.getElementById("txt");
btn = document.getElementById("addbtn");
if (sessionStorage.num){
num = sessionStorage.num;
}
btn.onclick = function(){
num++;
sessionStorage.num = num;
showNum();
}
function showNum(){
txt.innerHTML = num;
}
}