一、JS基础
二、Vue
三、网络
1、用户输入URL后,基本的浏览器连接处理
- 浏览器从URL中解析出服务器的主机名;
- 浏览器将服务器的主机名转换成服务器的IP地址;
- 浏览器将端口号(如果有的话)从URL中解析出来;
- 浏览器建立一条与Web服务器的TCP连接;
- 浏览器向服务器发送一条HTTP请求报文;
- 服务器向浏览器回送一条HTTP响应报文;
- 关闭连接,浏览器显示文档。
四、CSS
五、React
六、异步
七、工程化
八、浏览器
1、常见浏览器及其内核
- Internet Explorer(IE浏览器):Trident内核;
- Firfox(火狐浏览器):Gecko内核;
- Chrome(谷歌浏览器):Chromium内核或Chrome内核,以前是Webkit;
- Safari:Webkit内核;
- Opera:Blink内核。
2、浏览器渲染原理及过程
关键渲染路径:浏览器从最初接收请求来的
HTML、CSS、JavaScript等资源,然后解析、构建树、渲染布局、绘制,最后呈现给用户能看到的界面这整个过程。
-
用户看到页面实际上可以分为两个阶段:
- 页面内容加载完成:
DOMContentLoaded;仅
DOM加载完成。 - 页面资源加载完成:
Load。页面上所有的
DOM、样式表、脚本、图片都加载完成。
- 页面内容加载完成:
-
浏览器渲染的过程主要包括以下五步:
- 浏览器将获取的HTML文档解析成
DOM树; - 处理CSS标记,构成层叠样式表模型
CSSOM(CSS Object Model); - 将DOM和CSSOM合并为
渲染树(rendering tree),代表一些列将被渲染的对象; - 渲染树的每个元素包含的内容都是计算过的,称之为
布局(layout)。浏览器使用一种流式处理的方法,只需要一次绘制操作就可以布局所有的元素。
- 将渲染树的各个节点绘制到屏幕上,称为
绘制(painting)。
- 浏览器将获取的HTML文档解析成
DOM > CSSOM > Rendering Tree > Layout > Painting
参考资料:浏览器渲染原理与过程