h5的本地存储——sessionStorage,localStorage
Posted 怀瑾握瑜
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了h5的本地存储——sessionStorage,localStorage相关的知识,希望对你有一定的参考价值。
html5 提供了两种在客户端存储数据的新方法:
- localStorage - 没有时间限制的数据存储
- sessionStorage - 针对一个 session 的数据存储
SessionStorage, LocalStorage, Cookie这三者都可以被用来在浏览器端存储数据,localStorage和sessionStorage都是本地存储。
Cookie会在每次发送HTTP请求时附加到Cookie
头字段,服务器以此得知用户所处的状态。
Web Storage的概念和cookie相似,区别是它是为了更大容量存储设计的。Cookie的大小是受限的,并且每次你请求一个新的页面的时候Cookie都会被发送过去,这样无形中浪费了带宽,另外cookie还需要指定作用域,不可以跨域调用。
sessionStorage是会话型的,就是说如果你关闭了浏览器,它的数据就会被删除掉。
localStorage是持久型的,不存在过期这个说法,除非你手动删除。
手动引用一下 http://harttle.com/2015/08/16/localstorage-sessionstorage-cookie.html 的链接
引用内容如下:
LocalStorage/SessionStorage提供的存储也是基于字符串的键值对。可以通过setItem
,getItem
来访问其中的存储项:
localStorage.clear();
localStorage.setItem(‘key‘, ‘value‘);
localStorage.getItem(‘key‘); // => ‘value‘
localStorage.removeItem(‘key‘);
因为它只能存储字符串,要存JSON只能序列化为字符串:
var testObject = { ‘one‘: 1, ‘two‘: 2, ‘three‘: 3 };
// Put the object into storage
localStorage.setItem(‘testObject‘, JSON.stringify(testObject));
// Retrieve the object from storage
var retrievedObject = localStorage.getItem(‘testObject‘);
console.log(‘retrievedObject: ‘, JSON.parse(retrievedObject));
以上是关于h5的本地存储——sessionStorage,localStorage的主要内容,如果未能解决你的问题,请参考以下文章
H5本地存储sessionStorage和localStorage的区别