You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

32 lines
3.1 KiB
Markdown

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# 第二季回归 | 这次我们来专门聊聊V8
你好,我是李兵。在这个专栏中,我们对浏览器的工作原理进行了详细的介绍。
初期的浏览器展示的只是一些静态页面随着需要和页面交互的需求越来越多JavaScript就出现在了浏览器中它让静态的页面动了起来。目前JavaScript已成为页面中最核心的一部分了不过JavaScript作为一门高级语言它的代码给到浏览器或者Node.js时是不能直接被底层的CPU所执行的这就需要通过JavaScript虚拟机来实现代码的编译和执行。
市面上有很多种JavaScript虚拟机比如SpiderMonkey、V8、JavaScriptCore等其中由谷歌开发的开源项目V8使用最为广泛。
V8主要应用于Google开源浏览器Chrome中它拥有非常庞大的生态圈一方面得益于全球25亿台安卓设备上的Chrome浏览器另一方面也和它的许多革命性设计分不开。
比如V8摒弃了导致JavaScript执行速度过慢的解释执行方式率先采用了即时编译JIT的双轮驱动的设计混合了编译执行和解释执行两种方式。JIT作为一种权衡策略大幅优化了JavaScript代码的执行效率也将JavaScript虚拟机技术推向了一个全新的高度。
作为JavaScript程序员你可能并不会去实现一个JavaScript虚拟机不过我们还是有必要理解JavaScript虚拟机工作机制的你可以从中学习到很多优化性能的方法帮你写出更高效的JavaScript代码。
所以,我回到极客时间做了第二季专栏《[图解Google V8](https://time.geekbang.org/column/intro/296?utm_term=zeusOVYAE&utm_source=app&utm_medium=geektime&utm_campaign=296-presell&utm_content=liulanqizhuanlan0316)》。在这一季里我会专门讲讲V8的工作原理帮你完整梳理V8的核心知识体系。在讲述方式上我仍然延续这一季的风格通过大量图片演示深入浅出地讲解V8执行JavaScript代码的底层机制和原理。
希望通过这门课程带你了解完整的V8编译流水线同时通过对V8工作机制的学习搞懂JavaScript语言的核心特性进而从根源解决程序问题加快JavaScript的执行速度。
下面是专栏的目录:
![](https://static001.geekbang.org/resource/image/2c/a1/2cb0c3abcb6d7683df56353ac33beca1.jpg)
为了感谢老同学,我还准备了一个「专属福利」:
3 月 16 日,专栏上新时,我会送你一张 10 元专属优惠券,可与限时优惠同享,有效期 48 小时,建议尽早使用。
**点击下方图片**,立即免费试读新专栏。
[![](https://static001.geekbang.org/resource/image/c4/c4/c485757bed7d2269fe02048011a5f5c4.jpg)](https://time.geekbang.org/column/intro/296?utm_term=zeusOVYAE&utm_source=app&utm_medium=geektime&utm_campaign=296-presell&utm_content=liulanqizhuanlan0316)
一段新的征程,期待与你见证成长!我在《[图解Google V8](https://time.geekbang.org/column/intro/296?utm_term=zeusOVYAE&utm_source=app&utm_medium=geektime&utm_campaign=296-presell&utm_content=liulanqizhuanlan0316)》等你。