美文网首页
localstorage的使用(缓存)

localstorage的使用(缓存)

作者: 洋洋袁 | 来源:发表于2018-05-10 10:31 被阅读0次

在微信公众号看到了一篇文章,截取一些重点做笔记,篇尾附上原文出处。

1. localStorage出现的需求和目的

    localStorage出现是为了弥补cookie(4k)容量过小的问题,localStorage在大部分电脑是5m。与localStorage同时出现的还有sessionStorage,sessionStorage是会话级,页面关闭,自动清除,localStorage需要清除行为才能清除。

2. 操作方法

    新增(替换),获取,单个移除,全部移除:

    1. window.localStorage.setItem(key,value)

    2. window.localStorage.getItem(key)

    3. window.localStorage.removeItem(key)

    4. window.localStorage.clear(key)

    window是可以省略的,且需要注意的是:简单数据类型和复杂数据类型都可以存储在localStorage当中,但是对于引用数据类型,需要进行序列化和反序列化,说人话就是用JSON.stringify()转换为json字符串,同理获取的时候可以恢复为原来的数据

3. 注意的地方

    1. 当存量接近最大值时,getItem的速度大大降低。

    2. setItem时,如果存量加上添加量大于上限,那么就会出错,需要捕捉错误:

        try {  

              localStorage.setItem(key, value);

        } catch(e) {

              if (isQuotaExceeded(e)) {

                    // Storage full, maybe notify user or do some clean-up

              }

        }

function isQuotaExceeded(e) {  

  var quotaExceeded = false;

  if (e) {

    if (e.code) {

      switch (e.code) {

        case 22:

          quotaExceeded = true;

          break;

        case 1014:

          // Firefox

          if (e.name === 'NS_ERROR_DOM_QUOTA_REACHED') {

            quotaExceeded = true;

          }

          break;

      }

    } else if (e.number === -2147024882) {

      // Internet Explorer 8

      quotaExceeded = true;

    }

  }

  return quotaExceeded;

}

4. 加载和缓存静态资源

    后边实在是太长,直接扔原文

相关文章

  • localstorage的使用(缓存)

    在微信公众号看到了一篇文章,截取一些重点做笔记,篇尾附上原文出处。 1. localStorage出现的需求和目的...

  • 浏览器缓存方法 localStorage

    设置缓存 localStorage.setItem(key, value) 获取缓存 localStorage.g...

  • 浏览器application中cache storage及app

    1、前言 前端缓存分为HTTP缓存和浏览器缓存,浏览存储也有很多方法,比如使用localStorage、sessi...

  • localStorage、sessionStorage、cook

    先看各个缓存的使用,后面介绍优缺点和不同 localStorage sessionStorage cookie 总...

  • java-单例模式实现本地缓存

    几种方案: 1、分布式缓存中间件2、前端使用 localstorage 设置浏览器缓存3、本地缓存 优缺点 1、引...

  • HTTP缓存

    缓存类型:(私有缓存与共享(代理)缓存) 浏览器缓存:私有缓存localStorage;sessionStorag...

  • localStorage缓存

    本地缓存Storage localStorage及sessionStorage使用(没有过期时间,不清空就一直在)...

  • getStorage:fail parameter error:

    报错截图: 从上图可以看出是使用getStorage导致的,因为我是把vue缓存方法localStorage['c...

  • H5缓存

    sessionStorage localStorage 应用程序缓存 a) 可配置需要缓存的资源b) 网络无连...

  • localstorage is not defined问题

    之前使用vue搭建了一个网站,使用了localStorage的缓存方法,但是今天换了一个地方重新运行之前的代码,居...

网友评论

      本文标题:localstorage的使用(缓存)

      本文链接:https://www.haomeiwen.com/subject/upnarftx.html