文章目录

  • 1浏览器缓存
    • 1.1缓存的目的
    • 1.2浏览器缓存机制
    • 1.2浏览器缓存大小
  • 2.浏览器缓存机制
    • 2.1浏览器缓存机制
    • 2.2常说的浏览器缓存机制
    • 2.3 HTTP Cache
  • 3.相关API:

1浏览器缓存

  • 浏览器缓存是为了提升页面访问的速度,浏览器对一些已经访问过的网络资源(JS、css、image等等)会先存储在本地磁盘,当浏览器需要再次引用这些资源的时候,从本地加载,不从网络请求。

1.1缓存的目的

  • 提升页面访问的速度,提升用户访问网站的体验。

1.2浏览器缓存机制

  • 浏览器第一次访问网站的时候,会请求所有的静态资源,并根据HTTP协议头存储.

  • 浏览器第二次访问网站及后面的请求,都会考虑到缓存机制。

1.2浏览器缓存大小

  • 存储内容大小一般支持5MB左右(不同浏览器可能还不一样)

  • 浏览器端通过 Window.sessionStorage 和 Window.localStorage 属性来实现本地存储机制。

2.浏览器缓存机制

2.1浏览器缓存机制

  • 有四个方面,按照获取资源时请求的优先级依次排列为:Memory Cache、Service Worker Cache、HTTP Cache、Push Cache。

2.2常说的浏览器缓存机制

  • 常说的浏览器缓存机制主要就是HTTP协议定义的缓存机制.
    HTTP协议定义的缓存策略包括Expires策略、Cache-control策略、用户行为与缓存三部分。

2.3 HTTP Cache

  • 可分为强缓存和协商缓存。优先级较高的是强缓存,在命中强缓存失败的情况下,才会走协商缓存。对一条http get报文的基本缓存处理过程包括7个步骤:接收、解析、查询、新鲜度检测、创建响应、发送、日志。

3.相关API:

  • xxStorage.setItem(‘key’, ‘value’);
    该方法接受一个键和值作为参数,会把键值对添加到存储中,如果键名存在,则更新其对应的值。

  • xxStorage.getItem(‘person’);

该方法接受一个键名作为参数,返回键名对应的值。

  • xxStorage.removeItem(‘key’);
    该方法接受一个键名作为参数,并把该键名从存储中删除。

  • xxStorage.clear()
    该方法会清空存储中的所有数据。

PS:

  1. SessionStorage存储的内容会随着浏览器窗口关闭而消失。
  2. LocalStorage存储的内容,需要手动清除才会消失。
  3. xxStorage.getItem(xxx)如果xxx对应的value获取不到,那么getItem的返回值是null。
  4. JSON.parse(null)的结果依然是null。

前端学习之浏览器缓存相关推荐

  1. 前端学习:浏览器缓存方式有哪些(cookie、localstorage、sessionstorage)

    浏览器缓存有哪些 浏览器缓存的问题在后台项目中会经常出现,本期文章会总体介绍 浏览器缓存的几种方式 和 通常缓存的方式 .

  2. 使用缓存实现前端性能优化——浏览器缓存机制、缓存分类

    前端性能优化探讨及浏览器缓存机制 一.缓存如何实现前端性能优化 1.什么是浏览器缓存 2.js请求,一般会有哪些地方有缓存处理? 3.静态资源 ① 什么是静态资源 ② 静态资源的缓存策略 二.缓存的类 ...

  3. 前端学习笔记--HTTP缓存

    原文地址:https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/http-c ...

  4. 前端学习之浏览器从输入URL到页面加载的全过程

    浏览器从输入URL到页面加载的全过程 从输入URL到页面加载的主干流程如下: 1.浏览器的地址栏输入URL并按下回车. 2.浏览器查找当前URL的DNS缓存记录. 3.DNS解析URL对应的IP. 4 ...

  5. 前端面试系列-浏览器缓存机制

    缓存位置 从缓存位置上来说分为四种,并且各自有优先级,当依次查找缓存且都没有命中的时候,才会去请求网络 Service Worker Memory Cache Disk Cache Push Cach ...

  6. 前端学习(一) 浏览器渲染原理

    前言 浏览器的内核是指支持浏览器运行的最核心的程序,分为两个部分,一是渲染引擎,另一个是JS引擎,渲染引擎在不同的浏览器中也不是都相同的.目前市面上常见的浏览器内核可以分为4种: Trident( I ...

  7. 如何清除chrome浏览器缓存

    清除浏览器的缓存 知识调用 前言引入 具体操作 知识调用 文章中可能用到的知识点 前端学习:浏览器缓存方式有哪些(http协议 websql indexDB cookie localstorage s ...

  8. 聊一聊浏览器缓存机制

    相信很多前端童鞋对于浏览器缓存都不太陌生,但是如果没有系统的归纳总结,可能三言两句很难说明白.如何才能完美的回答,这是一个值得思考的问题. 当然,我们不能为了应对面试才去掌握,而应该当作技能储备起来, ...

  9. 面试-浏览器缓存机制

    前语:不要为了读文章而读文章,一定要带着问题来读文章,勤思考. 作者:Jartto 来源:http://1t.click/tJV 相信很多前端童鞋对于浏览器缓存都不太陌生,但是如果没有系统的归纳总结, ...

最新文章

  1. 一步一步搞定InfoPath(02)--配置VSTA
  2. C++测试申请最大内存空间
  3. 好技术领导和差技术领导区别在哪里--转
  4. php 执行多个文件,PHP提高执行多个查询时读取一千行文件的性能
  5. python 列表 remove()函数使用详解
  6. EXCEL VBA编程(excel办公高手必经之路)-曾贤志-专题视频课程
  7. C# ListView控件用法
  8. 如何删除绿盾加密软件
  9. c语言图片输出,C语言输出图片?
  10. “属你最牛” | 树莓派百变打印机
  11. 硬件设计丨什么是硬件工程师?
  12. linux:服务开机自启
  13. 哈工程转专业计算机,2021年哈尔滨工程大学大一新生转专业及入学考试相关规定...
  14. Nginx正向代理和反向代理配置
  15. 数字集成电路设计(五、仿真验证与 Testbench 编写)(一)
  16. 路由器如何设置上网(TP-LINK)
  17. 笔形式的之字形高低点指标(MT5)
  18. movie maker视频剪辑软件的使用
  19. openstack手搭T版(centos7)
  20. lgg7深度详细参数_MotoGStylus2021参数配置-MotoGStylus2021详细参数评测

热门文章

  1. Go爬取起点中文网 解决文字反爬
  2. 2021-2027全球与中国汽车CMOS图像传感器市场现状及未来发展趋势
  3. “该微信号已经绑定了50个小程序,不可继续绑定”,如何自助解绑
  4. 模式对象和用户权限管理
  5. 数据库手工注入中的闭合
  6. Python数据处理课程设计-房屋价格预测
  7. 计算机科学与工程6,2019上海软科世界一流学科排名计算机科学与工程专业排名哈佛大学排名第6...
  8. vue3使用箭头函数导入异步组件报错Invalid VNode type: undefined的解决方案
  9. Stm32MP157-Linux(Ubuntu)——Ubuntu入门
  10. 打游戏计算机内存不足,玩游戏内存不足? 教你轻松几步升级电脑内存