session Storage
会话存储,只有在浏览器被关闭前使用,创建另一个页面的时候使用,是临时保存,一旦关闭浏览器就会失效。
local Storage
本地存储,可以长期存储数据,没有时间限制
目前支持local Storage的浏览器有:
Chrome 4+ safari 4+ Firefox 1.5+ Opera 10.5+
IE8+以及IE7的兼容模式
IndexedDB
相对于Local Storage(Dom Storage)来说,IndexedDB用于客户端的大量结构化数据的存储,而Local Storage属于小数据量的存储。
IndexedDB的特性包括:
- 一个域一个datatable
- key-valuede检索方式
- 建立在关系型的数据模型之上,具有索引表、游标、事务等概念
总而言之,IndexedDB属于大数据量的存储,Local Storage属于小数据量的存储。
在webkit中,Local Storage初始化后,数据全部被读入内存,其后的操作都是针对内存操作。但存在后来同步线程将数据写入sqlite3数据库,因此Local Storage API是同步操作。
而,IndexedDB初始化时数据不能全部读入内存中,采用标注的数据库读写方式,在windows下是异步操作,worker下是同步操作。
这三个例子的测试代码,可以pull我的git,有演示
https://github.com/daisyHawen/Html5-storage