美文网首页前端&优化让前端飞Web前端之路
新手推荐,前端性能优化小整理,效率加倍

新手推荐,前端性能优化小整理,效率加倍

作者: ToEnd | 来源:发表于2018-05-03 21:30 被阅读43次

一、 浏览器渲染原理:

1.输入网址  -> dns查询 -> dns缓存 -> 三次握手建立连接 -> 浏览器发送请求到服务器 -> 服务器返回html -> 浏览器渲染页面; 

​2.浏览器渲染过程(webkit为例):

① 首先进行dom解析,css解析,构建dom树;(display:none的元素在dom树)

② css解析完成css rules加到dom树上,生成render tree(回流reflow阶段,应尽量避免);(display:none的元素不在dom树)

③ 经过层叠上下文处理,生成render layer(重绘repaint阶段),可以直接去paint页面,或者去④;

④ 层合并后生成graphics layer,然后GPU绘制。

二、 浏览器宿主环境层面:

1.由于单线程解析阻塞限制,可以用script defer属性异步加载,样式放头部,脚本放底部;

2.结合dns-prefetch、dns-preload、preload预加载资源;

3.利用事件冒泡机制,采用事件委托方法绑定事件;

4.浏览器渲染时,开启硬件加速可以生成复合层,复合层交给GPU渲染,但不能滥用;

三、 网络层面:

1.减少http请求数量:css、js合并,css sprites,font-icon,base64编码图片,图片懒加载;

2.减轻http数据请求大小:静态资源压缩,tinypng压缩图片,webp格式,gzip压缩;

3.对于cookie性能bug,静态资源分开部署,cdn缓存;

4.缓存处理(强缓存,协商缓存),本地缓存;

5.dns-prefetch,preload;

6.反向代理,cdn,负载均衡;

小编推荐,前端学习交流群 330336289  邀请码:寂静!

四、 代码层面:

1.利用requestAnimationFrame做持续动画;

2.缓存dom,优化循环体;

3.减少重绘,回流,样式层面进行层提升;

4.闭包使用,内存回收;

5.代码复用;

6.递归时采用尾调用自身即尾递归,永远不会发生栈溢出;

7.硬件加速时添加z-index,人为干扰复合层的排序,有效减少chrome创建不必要的复合层。

相关文章

  • 新手推荐,前端性能优化小整理,效率加倍

    一、 浏览器渲染原理: 1.输入网址 -> dns查询 -> dns缓存 -> 三次握手建立连接 -> 浏览器发送...

  • 前端性能优化(中)

    性能优化调研系列文章 《前端性能优化(上)》 《前端性能优化(中)》 《前端性能优化(下)》 《前端性能优化(上)...

  • 前端性能优化(下)

    性能优化调研系列文章 《前端性能优化(上)》 《前端性能优化(中)》 《前端性能优化(下)》 《前端性能优化(中)...

  • 前端性能优化(上)

    性能优化调研系列文章 《前端性能优化(上)》 《前端性能优化(中)》 《前端性能优化(下)》 为什么要进行前端性能...

  • 图解前端性能优化

    花了一段时间,以思维导图的形式整理了一下前端性能优化的一些知识点,包括前端性能监控、2019年前端性能优化清单以及...

  • 前端性能优化

    js性能小贴士——优化循环 前端网页与js性能优化 我总结的js性能优化的小知识 提高 web 应用性能之 Jav...

  • 前端性能 优化 大全

    js性能小贴士——优化循环 前端网页与js性能优化 我总结的js性能优化的小知识 提高 web 应用性能之 Jav...

  • 前端性能优化清单

    本文参考前端性能优化最佳实践2018前端性能优化清单 以下是针对目前公司项目(我参与的项目)的具体情况,整理出来的...

  • 前端面试必问及加分点---性能优化篇

    如何进行网站性能优化 你有用过哪些前端性能优化的方法? 谈谈性能优化问题 代码层面的优化 前端性能优化最佳实践

  • 前端性能优化总结

    本着学习整理的目的,从各个大佬那里把关于前端性能优化的内容归纳总结到了一起,如有错误欢迎指出!前端的性能优化主要分...

网友评论

    本文标题:新手推荐,前端性能优化小整理,效率加倍

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