HTML5教程

前端面试-性能优化篇

本文主要是介绍前端面试-性能优化篇,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
、网络优化 1 使用CDN 2 利用缓存:304缓存(可以举例vue的打包和服务端设置响应头缓存)、serviceworker、sessionstorage、localstorage、indexdb(websql兼容性不好) 3 减少请求和体积(开户gzip、合并请求和文件、压缩代码和图片)
4 按需加载(图片、模块)   一、代码优化 减少代码执行次数(按需执行、防抖节流、提高代码复用率、多使用浏览器内置的api(例如冒泡排序可以用Math.sor和Object.assign))   三、渲染优化 1 减少重排(回流),以下操作会触发重排:     1)节点的变化(添加、删除、位置、尺寸、样式)     2)访问offsetWidth,offsetLeft,scrollTop,scrollHeight(浏览器为了保证获取到正确的值),不一定,面试可以 回答这点     3)浏览器的窗口尺寸变化 优化(主要是减少操作、合并操作、移出文档流操作):     样式拼接好赋值给style.cssText、或者切换类名     先在fragment进行节点操作     将元素移除再操作、设置none、absolute/fixed、innerHtml   2 减少重绘(css改变、visibility、背景色等,一般是颜色等不引起文档结构变化时发生的)  注:重绘不一定导致重排,但重排一定会导致重绘。   3 渲染量大则分片渲染 例如超长列表只渲染可视区域
这篇关于前端面试-性能优化篇的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!