30. 如何实现可过期的localStorage
-
localStorage只能用于长久保存网站的数据,保存的数据没有过期时间,直到手动删除。所以要实现过期的localStorage缓存的重点是:如何清理过期的缓存
-
方法:
- 惰性删除
- 定义:指某个键值过期后,该键值不会被马上删除,而是的能到下次被使用的时候,才会被检查到过期,此时才能删除
- 实现方法:存储的数据类型是个对象,包含两个key,一个是存储的value值,一个是当前时间。获取数据时,拿到存储的时间和当前时间做比较,如果超过过期时间就清除cookie
- 定时删除
- 定义:指每隔一段时间执行依次删除操作,并通过限制删除操作执行的次数和频率,来减少删除操作对CPU的长期占用,另一方面此方法有效的减少了因惰性删除带来的localStorage空间的浪费
- 实现过程:获取所有设置过期时间的key判断是否过期,过期就存储到数组中,遍历数组,每隔1s(固定时间)删除5个(固定个数),直到把数组中的key从localStorage中全部删除
- LocalStorage清空应用场景:token存储在LocalStorage中,要清空
- 惰性删除
31. 浏览器如何渲染页面
-
html被html解析器解析成DOM树
-
CSS被CSS解析器解析成CSS规则树
-
浏览器将CSS规