一周考题

131 阅读2分钟

1. HTML5的离线储存怎么使用,工作原理能不能解释一下?

  1. 在用户没有与因特网连接时,可以正常访问站点或应用,在用户与因特网连接时,更新用户机器上的缓存文件
  2. 原理:HTML5的离线存储是基于一个新建的.appcache文件的缓存机制(不是存储技术),通过这个文件上的解析清单离线存储资源,这些资源就会像cookie一样被存储了下来。之后当网络在处于离线状态下时,浏览器会通过被离线存储的数据进行页面展示

如何使用

页面头部像下面一样加入一个manifest的属性; 在cache.manifest文件的编写离线存储的资源 在离线状态时,操作window.applicationCache进行需求实现

2. 简述你所知道的前端页面级性能优化

提升页面性能优化的常见方式:

  1. 资源压缩合并,减少http请求
  2. 非核心代码异步加载 --> 异步加载的方式 --> 异步加载的区别
  3. 利用浏览器缓存 --> 缓存的分类 --> 缓存的原理 缓存是所有性能优化的方式中最重要的一步【重要】 有的人可能会回答local storage 和session storage,其实不是这个。浏览器缓存和存储不是一回事。
  4. 使用CDN浏览器第一次打开页面时,缓存是起不了作用的。这个时候,CDN就上场了。
  5. DNS预解析

资源压缩合并,减少http请求

合并图片(css sprites)、CSS和JS文件合并、CSS和JS文件压缩

图片较多的页面也可以使用 lazyLoad 等技术进行优化。

精灵图等

非核心代码异步加载

异步加载的方式:(这里不说框架,只说原理)

动态脚本加载

defer

async