一、Localstorage简介
Localstorage是HTML5标准中提供的一种本地客户端数据存储方式,是对于cookie的一种补充。与cookie不同的是,Localstorage的数据不会随着每个http请求发送到服务器,而是存储在浏览器端,仅供同一个域名下的页面使用。 Localstorage是以键值对(key-value)的形式存储的,可通过JavaScript API访问。它可以存储字符串、数值、布尔值、对象和数组等数据类型。Localstorage的容量大小一般为5MB左右,但是在不同的浏览器上可能会有些许差异。
二、Localstorage时间限制
与cookie一样,Localstorage的存储也有时间限制。下面分别从以下三个方面进行详细阐述。
三、Localstorage数据过期时间限制
我们可以利用Localstorage的setItem(key,value)方法进行数据存储,同时也可利用getItem(key)方法进行数据读取。其中,setItem()方法是可以设置第三个参数time的,用来设置数据存储的时间。在超过设定时间后,数据将自动失效。
//存储一个键值,设置了过期时间为2分钟(单位为毫秒)
localStorage.setItem('username','John',2*60*1000);
//读取刚刚存储的数据(2分钟之内)
localStorage.getItem('username');
四、Localstorage数据持久性的限制
Localstorage数据的存储是基于浏览器的,如果用户使用的是隐身模式、清除浏览器缓存、或者更换了新的浏览器,那么之前存储的数据就将丢失。由此可以看出Localstorage的数据并不是真正的持久性存储。
五、Localstorage存储容量大小限制
Localstorage的存储容量大小是有限制的,一般约为5MB左右。这是一种浏览器保障用户安全的做法,以防止网站恶意滥用存储。一旦超出这个限制,就需要删除之前存储的数据,否则存储失败。
//设置一个大于5MB的字符串
var str ='a'.repeat(1024*1024*6);
localStorage.setItem('bigdata',str);
//显示存储失败,原因是超出了存储限制
console.log(localStorage.getItem('bigdata'));
总结
通过以上几个方面的阐述,我们了解到了Localstorage在时间限制方面的应用。我们可以根据需要设置数据的过期时间,但是注意数据并不是真正的持久性存储,也需要注意存储容量大小的限制。