NAN简介NAN的全称是NativeAbstractionforNode.js,是对Node.js性能的封装。安装后,你会得到一堆C++头文件,里面有一堆宏。主要为Node.js和V8的跨版本提供封装的宏,让开发者无需关心版本间的API差异。(来自《nodejs来一打C++扩展》)NAN的优点是可以屏蔽不同版本Node的API,使得C++扩展一次编写,随处编译,一个C++扩展可以适用于不同版本的Node.js。这里c++扩展实现的功能是求和扩展(helloworld太多了,另写一个)。扩展地址为:https://www.npmjs.com/package...,项目代码地址:https://github.com/warjiang/d...使用方法如下:项目目录如下:在开发之前,我们首先需要安装nan包(npminstallnan-S)。扩展开发分为两个级别,c++级别和JS级别。src目录主要是c++代码,也是扩展的实现部分。index.js引用了C++扩展,暴露了上层使用的方法。初次开发nodejs扩展的用户需要注意项目目录下的binding.gyp文件(node-gyp会读取项目中的binding.gyp):target_name为sum,表示最后生成的扩展文件被命名为sum.node。include_dirs的意思是除了nodejs的基本依赖,我们还需要nan的头文件,#include#includeusingv8::Local;usingv8::对象;使用v8::Number;NAN_METHOD(sum){Nan::HandleScope范围;uint32_t总和=0;for(inti=0;iNumberValue();}info.GetReturnValue().Set(Nan::New(sum));}voidinit(Local