1、html5中的Web Storage包括了两种存储方式:sessionStorage和localStorage。
2、HTML5 提供了两种在客户端存储数据的新方法:
1、localStorage - 没有时间限制的持久的数据存储,只要你不主动删除可以想存多久存多久。
2、sessionStorage - 针对一个 session 的数据存储,这些数据只有在同一个会话中的页面才能访问,当会话结束后数据也随之销毁(例如你在网页上存储一些数据后关闭网页再重新打开,存储的数据就没有了)。因此sessionStorage不是一种持久化的本地存储,仅仅是会话级别的存储。
3、操作方法
localStorage和sessionStorage都具有相同的操作方法,例如setItem、getItem、removeItem、clear等。
1、setItem存储value:
用途:将value存储到key字段
用法:.setItem( key, value)
代码示例:sessionStorage.setItem("key", "value");
localStorage.setItem("site" , "js8.in");
2、getItem获取value:
用途:获取指定key本地存储的值
用法:.getItem(key)
代码示例:var value = sessionStorage.getItem("key");
var site = localStorage.getItem("site");
3、removeItem删除key:
用途:删除指定key本地存储的值
用法:.removeItem(key)
代码示例:sessionStorage.removeItem("key");
localStorage.removeItem("site");
4、clear清除所有的key/value:
用途:清除所有的key/value
用法:.clear()
代码示例:sessionStorage.clear();
localStorage.clear();
4、举栗子:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,height=device-height,initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<script type="text/javascript" src="vendor/jquery-1.11.3.min.js"></script>
<title>存储</title>
<style type="text/css">
input{
font-size: 15px;
width: 200px;
height: 30px;
}
</style>
</head>
<body>
<input id="inpt" type="text" value="请输入内容" />
<input id="clickb" type="button" value="点击看到提示" />
<input id="save" type="button" value="点击保存" />
<input id="delect" type="button"value="点击清除保存" />
<script type="text/javascript">
//sessionStorage
var getinfor = window.sessionStorage.getItem("inpt");
$("#save").click(function(){
window.sessionStorage.setItem("inpt",$("#inpt").val());
});
$("#clickb").click(function(){
alert("您输入的内容是:" + getinfor);
});
$("#delect").click(function(){
window.sessionStorage.removeItem("inpt");//清除缓存
});
//localstorage
/*$("#save").click(function(){
localStorage.setItem("inpt",$("#inpt").val());
});
$("#delect").click(function(){
localStorage.removeItem("inpt");
});
$("#clickb").click(function(){
alert("您输入的内容是:" + localStorage.getItem("inpt"));//清除缓存
});
*/
</script>
</body>
</html>
5、总结心得:
记得刚开始这个易盟咨询平台的项目的时候,就开始做页面的排版,页面的功能,页面的数据渲染,微信支付以及最后的使用到第三方服务器的环信实现即时通讯的功能。
其中在单聊功能中,有保存聊天记录的功能,当时我查资料,看代码,问同事等等的办法,也没有做出来这个聊天记录保存,并且可以下拉加载更多的时候可以实现看到以前记录的功能。
现在我对于这两种存储方式已经熟练地学会了,真真真是在实践中最惨痛的教训,好在在以后的开发微信过程中,可以越发的熟练应用以及学习那种学习方法和那种从容不迫的心态。