一个node.js如何检查参数types
我使用node.js一段时间,现在我需要编写一个附加组件,但是我是c ++的新手。
在node.js中,我可以传递可选参数到函数,并检查它们的types。
function hello(arg, options, callback){ if(!callback){ if(typeof options === 'function'){ callback = options; options = {}; } } console.log(typeof arg); }
但在一个插件。
Handle<Value> hello(const Arguments &args) { HandleScope scope; printf("%d\n", args.Length()); // how to check type of args[i] return String::New("world"); }
您应该查看http://v8.googlecode.com/svn/trunk/include/v8.h中的API。 你感兴趣的大部分function都在Value
类上。 网上有文档, http://bespin.cz/~ondras/html/classv8_1_1Value.html,但是看起来就像是一些随机的人上传的文档版本。 不知道他们是否在其他地方在线。
像这样的东西应该做你的JS片段相同的事情。
Handle<Value> hello(const Arguments &args) { HandleScope scope; Local<Value> arg(args[0]); Local<Value> options(args[1]); Local<Value> callback(args[2]); if (callback.equals(False())) { if (options->IsFunction()) { callback = options; options = Object::New(); } } // ... }
- 使用SocketIO4Net从.NET应用程序传递函数callback到node.js
- node.js与ASP.NET Core性能testing的意外结果
- 获取已经运行的进程的subprocessID
- 如何从对象输出中删除函数?
- 使用node-gyp构build时无法加载node.js本机插件,但在使用Visual Studio构build时可以使用
- Google V8 JavaScript引擎 – 如何将值设置为null?
- 为什么在通过Edge.js从Node.js调用C#时需要等待Task.Run?
- NodeJS Addon从NAN内部调用JavascriptcallbackAsyncWorker :: Execute
- 如何在没有面向对象的情况下关联数值和function