N-API 是独立于v8引擎之外的模块。用来向c++扩展程序提供接口,从而达到了c++扩展程序和v8引擎的隔离。因此在当nodejs版本变化之后c++扩展程序无需重新编译也能运行。
下面我们来看如何利用N-API为nodejs写一个简单的扩展:
我们的例子只从nodejs方面讲起。nodejs版本为8.x 。
首先安装 node-gyp 用来编译我们的扩展程序
V8是一个由美国Google开发的开源JavaScript引擎,用于Google Chrome中。V8在执行之前将JavaScript编译成了机器码,而非位元组码或是解释执行它,以此提升效能。更进一步,使用了如内联缓存(inline caching)等方法来提高性能。有了这些功能,JavaScript程序与V8引擎的速度媲美二进制编译。
Node.js是一个基于Chrome V8 引擎的JavaScript 运行时。