html5 -(Web 存储)-02
来源:互联网 发布:淘宝有哪些冷门的类目 编辑:程序博客网 时间:2024/05/22 11:47
localStorage - 没有时间限制的数据存储
sessionStorage - 针对一个 session 的数据存储
之前,这些都是由 cookie 完成的。但是 cookie 不适合大量数据的存储,因为它们由每个对服务器的请求来传递,这使得 cookie 速度很慢而且效率也不高。
在 HTML5 中,数据不是由每个服务器请求传递的,而是只有在请求时使用数据。它使在不影响网站性能的情况下存储大量数据成为可能。
对于不同的网站,数据存储于不同的区域,并且一个网站只能访问其自身的数据。
HTML5 使用 JavaScript 来存储和访问数据。
<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>
下面是引用一个网友的内容:http://www.cnblogs.com/xiaowei0705/archive/2011/04/19/2021372.html
首先自然是检测浏览器是否支持本地存储。在HTML5中,本地存储是一个window的属性,包括localStorage和sessionStorage,从名字应该可以很清楚的辨认二者的区别,前者是一直存在本地的,后者只是伴随着session,窗口一旦关闭就没了。二者用法完全相同,这里以localStorage为例。
if(window.localStorage){
alert('This browser supports localStorage');
}else{
alert('This browser does NOT support localStorage');
}
存储数据的方法就是直接给window.localStorage添加一个属性,例如:window.localStorage.a 或者 window.localStorage["a"]。它的读取、写、删除操作方法很简单,是以键值对的方式存在的,如下:
localStorage.a = 3;//设置a为"3"
localStorage["a"] = "sfsf";//设置a为"sfsf",覆盖上面的值
localStorage.setItem("b","isaac");//设置b为"isaac"
var a1 = localStorage["a"];//获取a的值
var a2 = localStorage.a;//获取a的值
var b = localStorage.getItem("b");//获取b的值
localStorage.removeItem("c");//清除c的值
这里最推荐使用的自然是getItem()和setItem(),清除键值对使用removeItem()。如果希望一次性清除所有的键值对,可以使用clear()。另外,HTML5还提供了一个key()方法,可以在不知道有哪些键值的时候使用,如下:
var storage = window.localStorage;
function showStorage(){
for(var i=0;i<storage.length;i++){
//key(i)获得相应的键,再用getItem()方法获得对应的值
document.write(storage.key(i)+ " : " + storage.getItem(storage.key(i)) + "<br>");
}
}
- html5 -(Web 存储)-02
- HTML5 Web存储
- HTML5--web存储
- Html5之web存储
- html5-web本地存储
- HTML5 Web 存储d
- html5-web存储
- HTML5 Web 存储功能
- HTML5 Web存储
- html5 web storage 存储
- HTML5 Web存储
- HTML5 Web 存储
- html5中的web存储
- HTML5 Web 存储
- HTML5 Web存储方式
- HTML5--Web存储
- HTML5 Web存储
- HTML5 Web 存储
- IIS7:备份还原,导入导出应用池数据,导出导入网站配置数据
- 自动旋转与自动调整大小
- ajax 无刷新动态更新时间
- C++开发者快速学习Objective-C语言核心语法
- .NET中安装SVN
- html5 -(Web 存储)-02
- Jenkins Build Pipeline View点击Job跳转到具体某个build中
- Nutch命令
- JPetStore5.0——项目配置过程记录
- 总结:.Net的C#移植到Cocoa Touch的Objective-C
- 双点弦截法迭代程序
- 关于WinForm中的DataGridView控件显示数据字典的解决方案。
- BIEE 11g 新特性Double Colunm案例一则 动态切换金额显示单位
- Difference between MRP vs MPS