其他分享
首页 > 其他分享> > 深入浏览器工作原理和JS引擎(V8引擎为例)

深入浏览器工作原理和JS引擎(V8引擎为例)

作者:互联网

浏览器工作原理和JS引擎

1.浏览器工作原理

在浏览器中输入查找内容,浏览器是怎样将页面加载出来的?以及JavaScript代码在浏览器中是如何被执行的?

大概流程可观察以下图:

那么在输入服务器地址,敲下回车那一刻会发生什么?

2.浏览器的内核

浏览器从服务器下载的文件最终要进行解析,那么内部是谁在帮助解析呢?这里就涉及到浏览器内核。不同的浏览器由不同的内核构成,以下是几个常见的浏览器内核:

事实上,浏览器内核指的是浏览器的排版引擎(layout engine),也称为浏览器引擎、页面渲染引擎或样版引擎。

3.浏览器的渲染过程

浏览器从服务器下载完文件后,就需要对其进行解析和渲染,流程如下:

那么,JavaScript代码由谁来执行呢?下面该JavaScript引擎出场了。

4.JavaScript引擎

首先由两个问题来认识一下JavaScript引擎。

(1)为什么需要JavaScript引擎?

(2)JavaScript引擎有哪些?

5.浏览器内核和JS引擎的关系

这里以Webkit内核为例。

6.V8引擎

下面一起深入了解一下强大的V8引擎。

6.1.V8引擎的原理

先了解一下官方对V8引擎的定义:

6.2.V8引擎的架构

V8的底层架构主要有三个核心模块(Parse、Ignition和TurboFan),接下来对上面架构图进行详细说明。

(1)Parse模块:将JavaScript代码转换成AST(抽象语法树)。

(2)Ignition模块:一个解释器,可以将AST转换成ByteCode(字节码)。

(3)TurboFan模块:一个编译器,可以将字节码编译为CPU认识的机器码。

6.3.V8引擎执行过程

V8引擎的官方在Parse过程提供了以下这幅图,最后就来详细了解一下Parse具体的执行过程。

标签:浏览器,为例,代码,JavaScript,JS,引擎,V8,解析
来源: https://www.cnblogs.com/MomentYY/p/15770904.html