将不同的数据类型动态分配给 v8::local<v8::value>argv[1]

Dynamically assigning different data type to v8::local<v8::value>argv[1]

如何根据传入数据(int、string、bool)类型将两种数据类型分配给 v8::Local<v8::Value>argv[1],如下所示。

v8::Local<v8::Value> argv[1];
 if(Isint)
{
  argv[0] = Nan::New<v8::Number>(intValue).ToLocalChecked();
}
if(IsString)
{
  argv[0] = Nan::New<v8::String>(stringValue);
 }
if(IsBool){
  argv[0] = Nan::New<v8::Boolean>(boolValue);
}

注意:根据上面执行的 if 检查,最终 argv[0] 将仅包含一个值,int、string 或 bool。

以上实现抛出 运行 时间错误作为 终止 SIGSEGV。请帮我解决这个问题。这是我第一次尝试 V8。

argv[0]可以如上赋值吗?

您的上述代码没有任何 运行 时间错误。错误来自 IsN't、ToString、IsBool 中的任何一个。