HTML5中与本地存储相关的两个重要内容:Web Storage与本地数据库。
1、其中,Web Storage存储机制是对HTML4中cookie存储机制的一个改善。由于cookie存储机制有很多缺点,HTML5不再使用它,转而使用改良后的Web Storage存储机制。
2、本地数据库是HTML5中新增的一个功能,使用它可以在客户端本地建立一个数据库,原本必须保存在服务器端数据库中的内容现在可以直接保存在客户端本地了,这大大减轻了服务器端的负担,同时也加快了访问数据的速度。
localStorage和sessionStorage使用时使用相同的API:
localStorage.setItem("key","value"); //以“key”为名称存储一个值“value”
localStorage.getItem("key"); //获取名称为“key”的值
localStorage.removeItem("key"); //删除名称为“key”的信息。
localStorage.clear(); //清空localStorage中所有信息
localStorage.key (index); //获取某个索引的key
localStorage、sessionStorage、cookie区别:
localStorage
- localStorage生命周期是永久,这意味着除非用户显示在浏览器提供的UI上清除localStorage信息,否则这些信息将永远存在。
- 存放数据大小为一般为5MB,而且它仅在客户端(即浏览器)中保存。
- 不参与和服务器的通信。
sessionStorage
- sessionStorage仅在当前会话下有效,关闭页面或浏览器后被清除。一旦会话关闭,那么数据会消失,比如刷新。
- 存放数据大小为一般为5MB,而且它仅在客户端(即浏览器)中保存。
- 不参与和服务器的通信。
cookie
- cookie机制:如果不在浏览器中设置过期时间,cookie被保存在内存中,生命周期随浏览器的关闭而结束,这种cookie简称会话cookie。
- 如果在浏览器中设置了cookie的过期时间,cookie被保存在硬盘中,关闭浏览器后,cookie数据仍然存在,直到过期时间结束才消失。
- 单个cookie保存的数据不能超过4kb。
localStorage只能存储字符串,如果需要存储对象,首先要转化为字符串。利用JSON.stringify();
-
然后取出person的对象你可以用JSON.parse();