Google V8 JavaScript引擎 - 如何将值设置为null?

Jus*_*ier 4 c++ v8 node.js

使用V8引擎,如何设置值null?基本上我想从C++插件返回一个变量到JavaScript,并且需要null在某些条件下将变量设置为.

Jus*_*ier 10

你可以明确地返回null通过v8::Null:

return scope.Close( Null() );
Run Code Online (Sandbox Code Playgroud)

而且,事实证明,如果Value声明了一个变量,它会被自动分配给undefined.例如,以下内容返回undefinedJavaScript:

 HandleScope scope;
 Local<Value> result;
 ...

 return scope.Close(result);
Run Code Online (Sandbox Code Playgroud)

  • 不,没有使用null值进行隐式初始化.这里`result`将是一个*empty*句柄.要使用`null`显式初始化它,可以使用`v8 :: Null()`函数. (3认同)
  • 空句柄被解释为“未定义”。JavaScript定义`null == undefined`为true,但是`null === undefined`为false。 (2认同)