html5本地存储(Web Storage API)
来源:互联网 发布:手持移动数据终端 编辑:程序博客网 时间:2024/05/16 17:43
1.浏览器可以存储5-10M内容,比以往的cookie4k容量高得多,注意是每个域名5M
2.localStorage.setItem ([string]key, [string]value); //用localStorage对象的setItem方法存储键/值,注意键/值只能是字符串,数字或对象不能直接存储
3. var sticky = localStorage.getItem("sticky_0"); //getItem方法提取值
alert(sticky);
4.API得到广泛支持,甚至IE8都可以用,测试浏览器是否支持localStorage,查看window全局对象是否有一个localStorage属性
if (window ["localStorage"])
{ //code here }
5.数字的存储,直接 localStorage.setItem ("numitems" , 1) ; js会默认1为字符串 ,在取值的时候用parseInt() 或者 parseFloat() 函数进行数字转换 ,
var numItems = parseInt(localStorage.getItem("numitems"));
6.localStorage的数组写法,可以把它看作是一个数组,这样就不用setItem和getItem
localStorage["key1"] = "value1";
var sticky = localStorage["key1"];
7.localStorage的length 和 key方法的使用:
for (var i = 0; i < localStorage.length; i++)
{
var key = localStorage.key(i);
var value = localStorage[key];
alert(value);
}
也可以使用for in循环
for (var key in localStorage )
{ var value = localStorage[key]; }
8.清除数据 localStorage.clear();
9.每个浏览器的调试工具,在resource里可以看到localStorage可以编辑和删除
10.为了避免同一域名下key的混淆,可以给相同类的key创建一个数组,见完整代码
11.可以存储任何js对象和数组,用JSON的stringify 和 parse方法,来进行字符串和js对象/数组的转换
12.删除某一条 localStorage.remove(key) ,
13.sessionStorage 会话存储和localStorage一样,只不过它用于临时,关闭浏览器则清除
完整代码
window.onload = init;localStorage.setItem("sticky_0", "Pick up dry cleaning");localStorage.setItem("sticky_1", "Cancel cable tv, who needs it now?");function init(){ var button = document.getElementById("add_button"); button.onclick = createSticky; var stickiesArray = getStickiesArray(); for (var i = 0; i < stickiesArray.length; i++) { var key = stickiesArray(i); var value = localStorage[key]; addStickyToDom(value); }}function addStickyToDom (value){ var stickies = document.getElementById("stickies"); var sticky = document.createElement("li"); var span = document.createElement("span"); span.setAttribute("class", "sticky"); span.innerHTML = value; sticky.appendChild(span); stickies.appendChild(sticky);}function createSticky(){ var stickiesArray = getStickiesArray(); var currentDate = new Date(); var time = currentDate.getTime(); var key = "sticky_" + time; var value = document.getElementById("note_text").value; localStorage.setItem(key, value); stickiesArray.push(key); localStorage.setItem("stickiesArray", JSON.stringify(stickiesArray)); addStickyToDom(value);}function getStickiesArray (){ var stickiesArray = localStorage.getItem("stickiesArray"); if (!stickiesArray) { stickiesArray = []; localStorage.setItem("stickiesArray", JSON.stringify(stickiesArray)); } else { stickiesArray = JSON.parse(stickiesArray); } return stickiesArray;}/** * Created by andrewlee on 13-11-11. */<!doctype html><html><head><title>Note to Self</title><meta charset="utf-8"><link rel="stylesheet" href="notetoself.css"><script src="notetoself.js"></script></head><!-- This is the first version of the sticky notes app--><body><form> <input type="text" id="note_text" /> <input type="button" id="add_button" value="Add Sticky Note to Self"></form><ul id="stickies"></ul></body></html>
- html5本地存储(Web Storage API)
- html5本地存储(web Storage)
- HTML5本地存储-Web Storage
- HTML5--本地存储Web Storage
- HTML5 本地存储Web Storage
- html5本地存储web storage
- HTML5--本地存储Web Storage
- (五)HTML5本地存储——Web Storage
- HTML5本地存储之Web Storage篇
- HTML5本地存储之Web Storage篇
- html5之本地存储web Storage
- HTML5本地存储之Web Storage篇
- HTML5本地存储之Web Storage篇
- HTML5本地存储之Web Storage篇
- html5中本地存储Web Storage
- HTML5本地存储之Web Storage篇
- 【html5】Web Storage本地存储 sessionStorage/localStorage
- HTML5本地存储之Web Storage
- cocos2d-x & android & windowxp 环境搭建&Demo运行
- MT6572平台加入呼吸灯功能——编写linux驱动
- 抱怨IT公司人才缺乏?留住现有人才方是正途
- DVD刻录方式
- [Qt教程] 第20篇 2D绘图(十)图形视图框架(下)
- html5本地存储(Web Storage API)
- Android invalidate 与postInvalidate用法
- 我的C++学习之路 --01.类的那些事儿。。。
- 第三讲. 逻辑回归和过拟合问题的解决 logistic Regression & Regularization
- 自己添加一个系统调用
- ubuntu12.04 eclipse mysql下中文乱码问题解决方案
- 文件 Slack 空间信息隐藏
- Python练习
- 合并 DLL