前端性能优化 --- css和js的装载与执行

版权声明:欢迎转载,转载请注明出处 https://blog.csdn.net/Nate__River/article/details/82185158

前端性能优化学习笔记三

一个网站在浏览器端是如何进行渲染的呢?

这里写图片描述

HTML渲染过程的一些特点

顺序执行、并发加载

用户输入网址(假设是个html页面,并且是第一次访问),浏览器向服务器发出请求,服务器返回html文件,浏览器根据词法分析从上往下解析html
发现<head>标签内有一个<link>标签引用外部CSS文件,浏览器又发出CSS文件的请求,服务器返回这个CSS文件。
发现<body>标签内有一个<img>标签引用外部图片文件,浏览器又发出图片文件的请求,服务器返回这个图片文件。
发现<body>标签内有一个<src>标签引用外部JS文件,浏览器又发出JS文件的请求,服务器返回这个JS文件。
并发上限各浏览器有差异,chrome为5个

css阻塞

css head中阻塞页面的渲染
css阻塞js的执行
css不阻塞外部脚本的加载

js阻塞

直接引入的js阻塞页面的渲染
js不阻塞资源的加载
js顺序执行,阻塞后续js逻辑的执行

依赖关系

页面渲染依赖于css的加载
js的执行顺序的依赖关系
js逻辑对于dom节点的依赖关系

js引入方式

直接引入
defer
async
异步动态引入js

加载和执行的一些优化点

css 样式表置顶
用 link 代替 import
js 脚本置底
合理使用 js 的异步加载能力

猜你喜欢

转载自blog.csdn.net/Nate__River/article/details/82185158