當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Node.js util.types.isExternal(value)用法及代碼示例

util.types.isExternal(value)

添加於:v10.0.0

參數

如果值是本機 External 值,則返回 true

本機 External 值是一種特殊類型的對象,它包含一個用於從本機代碼訪問的原始 C++ 指針 (void*),並且沒有其他屬性。此類對象由 Node.js 內部或本機插件創建。在 JavaScript 中,它們是帶有 null 原型的 frozen 對象。

#include <js_native_api.h>
#include <stdlib.h>
napi_value result;
static napi_value MyNapi(napi_env env, napi_callback_info info) {
  int* raw = (int*) malloc(1024);
  napi_status status = napi_create_external(env, (void*) raw, NULL, NULL, &result);
  if (status != napi_ok) {
    napi_throw_error(env, NULL, "napi_create_external failed");
    return NULL;
  }
  return result;
}
...
DECLARE_NAPI_PROPERTY("myNapi", MyNapi)
...
const native = require('napi_addon.node');
const data = native.myNapi();
util.types.isExternal(data); // returns true
util.types.isExternal(0); // returns false
util.types.isExternal(new String('foo')); // returns false

有關 napi_create_external 的更多信息,請參閱 napi_create_external()

相關用法


注:本文由純淨天空篩選整理自nodejs.org大神的英文原創作品 util.types.isExternal(value)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。