Node.js Addon(1)
来源:互联网 发布:淘宝商品资质图片 编辑:程序博客网 时间:2024/04/30 01:29
最新的node.js Addon和以前不同,外接函数使用void FunctionName(const FunctionCallbackInfo<Value>& args)。
形参和返回都使用args来获得:
1、FunctionCallbackInfo重载了'[]',可以通过'[]'取出。取出时应先对args的长度(Length())进行判断。
获取isolate,全局管理指针。
// 使用 HandleScope 来管理生命周期Isolate* isolate = Isolate::GetCurrent();HandleScope scope(isolate);Local<XXX> local = args[0]->ToXXX(isolate);
最新的转换函数都添加了isolate参数,方便管理。
args所转换的数据只能是Local(局部)变量,如果需要长期保存,应转换为Persistent(全局)变量。
bool BooleanValue()
int32_t Int32Value()
int64_t IntegerValue()
double NumberValue()
Local<Boolean> ToBoolean()
Local<String> ToString()
Local<Int32> ToInt32()
Local<Integer> ToInteger()
Local<Number> ToNumber()
Local<Object> ToObject()
Local<Uint32> ToUint32()
两个特殊参数转换:
输入参数为函数:需要通过Local<Function>::Cast进行转换,而没有To函数。并且获取到的参数为Local变量,函数结束后系统会收回变量,所以如果需要保持函数指针,在其他地方使用,必须转换为Persistent变量。
输入参数为类,JSON,数组:这几个就是Object,可以通过ToObject()获取。
2、args.GetReturnValue().Set()返回值函数,没有调用这个函数返回undefined,空参数调用为没有返回值。
加载初始化函数void Initialize(Handle<Object> exports)。
模块注册宏NODE_MODULE(AddonCore, Initialize)
函数注册宏NODE_SET_METHOD(exports, "FunctionName",FunctionName);
在初始化函数中注册函数,使C函数能在JavaScript上直接使用。
0 0
- Node.js Addon(1)
- Node.js Addon 返回数组
- node.js addon osg binding 2
- Node.js 添加 C-C++ Addon
- Node.js 添加 C-C++ Addon
- Node.js 添加 C-C++ Addon
- Node.js 添加 C-C++ Addon
- Node.js 添加 C-C++ Addon
- C++编写Node.js插件(Addon)
- 如何在Ubuntu上创建Node.js Addon
- Node Addon开发(第一部分):运行Github上的Node Addon例子
- 如何在VS2015中搭建可以写node.js的C++ Addon的环境
- c++编写node的addon(3) --向addon传参
- swig node-webkit addon 编译相关问题
- c++编写node的addon(4) --callback
- node.js 入门(1)
- Node.js实战(1)
- jQuery日期和时间插件(jquery-ui-timepicker-addon.js)jquerydatapicker插件 实现时分秒
- 摩客应邀到长虹集团做产品设计培训
- Android中View和ViewGroup介绍
- jsp两个页面的跳转
- 视频删了怎么恢复
- HTML中viewpoint用法
- Node.js Addon(1)
- Android API Guides---Canvas and Drawables
- 【翻译】GCJ 2008 APAC local onsites C Millionaire 题解
- 树的最大路径和
- javascrip基本知识总结
- cocos2dx 3.x 图层点击鼠标事件的屏蔽
- sql多表分类查询
- 《精通CSS:高级Web标准解决方案》学习过程--III
- set、list、map