nodejs与V8引擎

先来看v8(JavaScript引擎)的github地址

https://github.com/v8/v8

V8简介

V8 使用 C++ 开发,并在谷歌浏览器中使用。在运行 JavaScript 之前,相比其它的 JavaScript 的引擎转换成字节码或解释执行,V8将其编译成原生机器码( IA-32,x86-64, ARM, or MIPS CPUs ),并且使用了如内联缓存( inline caching )等方法来提高性能。
有了这些功能,JavaScript 程序在 V8 引擎下的运行速度媲美二进制程序。 V8 中实现的 ECMAScript 中指定 ECMA - 262 ,第3版 运行在 Windows XP 和Vista,Mac OSX 的10.5(雪豹和 Linux 系统使用 IA - 32 或 ARM 处理器。
V8可以独立运行,也可以 嵌入 到任何 C++ 应用程序。项目托管在 Google Code上 [1] ,基于 BSD 协议,任何组织或个人可以将其源码用于自己的项目中。

V8引擎的功能:

1、Chrom浏览器内置渲染

V8 引擎能够能够将 HTML/CSS/JavaScript 文本及相应的资源文件转换成图像结果, 其作用是将资源文件转化为用户可见的结果。
同类渲染引擎:Tridend(IE)、Gecko(FF),WebKit( Safari,Chrome,Andriod 浏览器 )
2、 独立运行
V8 使用了直译的方式,即把 JavaScript 代码直接编译成机器码( Machine Code, 有些地方也叫 Native Code),然后直接交由硬件执行。通俗的讲:V8引擎就是编译js代码编译成机器码,然后运行。

Node在启动的时候,就已经把 Native Module,Builtin Module 加载到内存里面了。后来的 JavaScript代码,就需要通过 V8 进行动态编译解析运行。

nodejs github官网的 V8代码,node不仅有v8的代码,还在其基础上做了封装和拓展。

在这里插入图片描述

参考链接
v8引擎的详解
编译性语言和解释性语言的区别

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值