浏览器面试题
本文最后更新于 2025年8月5日 晚上
参考:
https://juejin.cn/post/6844904021308735502 。
https://juejin.cn/post/6844903951377104903 。
常见浏览器内核
浏览器 | 内核(渲染引擎) | JavaScript 引擎 |
---|---|---|
Chrome | Blink | V8 |
FireFox | Gecko | SpiderMonkey |
Safari | Webkit | JavaScriptCore |
Edge | EdgeHTML | Chakra(for JavaScript) |
IE | Trident | Chakra(for JScript) |
PhantomJS | Webkit | JavaScriptCore |
浏览器输入 URL 按下回车后发生什么
参考:
https://juejin.cn/post/6935232082482298911 。
https://juejin.cn/post/6844904021308735502 。
- 输入网址并解析
- URL 解析
- DNS 查询
- HTTP 缓存
- TCP 三次握手建立连接
- 浏览器发送 HTTP 请求报文
- 服务器处理 HTTP 请求报文并返回 HTTP 响应报文
- 浏览器处理 HTTP 响应报文
- TCP 四次挥手断开连接
- 浏览器渲染页面
- 解析 HTML 文件,构建 DOM Tree
- 解析 CSS 文件,构建 CSSOM Tree
- 利用 DOM Tree 和 CSSOM Tree 构建 Render Tree
- 布局 Render Tree 计算每个节点的位置大小等信息(回流)
- 绘制 Render Tree 每个节点像素信息渲染到屏幕(重绘)
- 合并渲染层
网络攻击
参考:
https://juejin.cn/post/6844903685122703367 。
https://juejin.cn/post/6844903638532358151 。
前端性能优化
参考:
https://juejin.cn/post/6892994632968306702 。
https://juejin.cn/post/6911472693405548557 。
其它问题
- 跨域
- 同源策略
- 解析渲染页面
浏览器面试题
https://xuekeven.github.io/2021/09/08/浏览器面试题/