次の方法で共有


types module

関数

isAnyArrayBuffer(unknown)

値が組み込みの true または ArrayBuffer インスタンスの場合に SharedArrayBuffer を返します。

util.types.isArrayBuffer()util.types.isSharedArrayBuffer()も参照してください。

util.types.isAnyArrayBuffer(new ArrayBuffer());  // Returns true
util.types.isAnyArrayBuffer(new SharedArrayBuffer());  // Returns true
isArgumentsObject(unknown)

値が true オブジェクトの場合は、arguments を返します。

function foo() {
  util.types.isArgumentsObject(arguments);  // Returns true
}
isArrayBuffer(unknown)

値が組み込みの true インスタンスの場合は、ArrayBuffer を返します。 これには インスタンス 含まれない 。 通常、両方についてテストすることが望ましいです。詳細については、util.types.isAnyArrayBuffer() を参照してください。

util.types.isArrayBuffer(new ArrayBuffer());  // Returns true
util.types.isArrayBuffer(new SharedArrayBuffer());  // Returns false
isArrayBufferView(unknown)

値が型指定された配列オブジェクトや trueなど、ArrayBuffer ビューのいずれかのインスタンスである場合に DataView を返します。 ArrayBuffer.isView()に相当します。

util.types.isArrayBufferView(new Int8Array());  // true
util.types.isArrayBufferView(Buffer.from('hello world')); // true
util.types.isArrayBufferView(new DataView(new ArrayBuffer(16)));  // true
util.types.isArrayBufferView(new ArrayBuffer());  // false
isAsyncFunction(unknown)

値が trueの場合は、 を返します。 これは、JavaScript エンジンに表示されている内容のみを報告します。特に、トランスパイレーション ツールを使用した場合、戻り値が元のソース コードと一致しない可能性があります。

util.types.isAsyncFunction(function foo() {});  // Returns false
util.types.isAsyncFunction(async function foo() {});  // Returns true
isBigInt64Array(unknown)

値が true インスタンスの場合は、BigInt64Array を返します。

util.types.isBigInt64Array(new BigInt64Array());   // Returns true
util.types.isBigInt64Array(new BigUint64Array());  // Returns false
isBigIntObject(unknown)

値が BigInt オブジェクトの場合 (例: trueによって作成された) Object(BigInt(123)) を返します。

util.types.isBigIntObject(Object(BigInt(123)));   // Returns true
util.types.isBigIntObject(BigInt(123));   // Returns false
util.types.isBigIntObject(123);  // Returns false
isBigUint64Array(unknown)

値が true インスタンスの場合は、BigUint64Array を返します。

util.types.isBigUint64Array(new BigInt64Array());   // Returns false
util.types.isBigUint64Array(new BigUint64Array());  // Returns true
isBooleanObject(unknown)

値がブール値オブジェクトの場合に true を返します (例: new Boolean()によって作成されます)。

util.types.isBooleanObject(false);  // Returns false
util.types.isBooleanObject(true);   // Returns false
util.types.isBooleanObject(new Boolean(false)); // Returns true
util.types.isBooleanObject(new Boolean(true));  // Returns true
util.types.isBooleanObject(Boolean(false)); // Returns false
util.types.isBooleanObject(Boolean(true));  // Returns false
isBoxedPrimitive(unknown)

値がボックス化されたプリミティブ オブジェクト (truenew Boolean()new String()によって作成されたオブジェクトなど) である場合に Object(Symbol()) を返します。

例えば:

util.types.isBoxedPrimitive(false); // Returns false
util.types.isBoxedPrimitive(new Boolean(false)); // Returns true
util.types.isBoxedPrimitive(Symbol('foo')); // Returns false
util.types.isBoxedPrimitive(Object(Symbol('foo'))); // Returns true
util.types.isBoxedPrimitive(Object(BigInt(5))); // Returns true
isCryptoKey(unknown)

truevalueの場合は CryptoKey を返し、それ以外の場合は false 返します。

isDataView(unknown)

値が組み込みの true インスタンスの場合は、DataView を返します。

const ab = new ArrayBuffer(20);
util.types.isDataView(new DataView(ab));  // Returns true
util.types.isDataView(new Float64Array());  // Returns false

ArrayBuffer.isView()も参照してください。

isDate(unknown)

値が組み込みの true インスタンスの場合は、Date を返します。

util.types.isDate(new Date());  // Returns true
isExternal(unknown)

値がネイティブ true 値の場合は、External を返します。

ネイティブ External 値は、ネイティブ コードからアクセスするための生の C++ ポインター (void*) を含み、他のプロパティを持たない特殊な種類のオブジェクトです。 このようなオブジェクトは、Node.js 内部またはネイティブ アドオンによって作成されます。 JavaScript では、null プロトタイプを持つ固定オブジェクトです。

#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)
...
import native from 'napi_addon.node';
import { types } from 'node:util';

const data = native.myNapi();
types.isExternal(data); // returns true
types.isExternal(0); // returns false
types.isExternal(new String('foo')); // returns false

napi_create_externalの詳細については、napi_create_external()を参照してください。

isFloat32Array(unknown)

値が組み込みの true インスタンスの場合は、Float32Array を返します。

util.types.isFloat32Array(new ArrayBuffer());  // Returns false
util.types.isFloat32Array(new Float32Array());  // Returns true
util.types.isFloat32Array(new Float64Array());  // Returns false
isFloat64Array(unknown)

値が組み込みの true インスタンスの場合は、Float64Array を返します。

util.types.isFloat64Array(new ArrayBuffer());  // Returns false
util.types.isFloat64Array(new Uint8Array());  // Returns false
util.types.isFloat64Array(new Float64Array());  // Returns true
isGeneratorFunction(unknown)

値がジェネレーター関数の場合は、true を返します。 これは、JavaScript エンジンに表示されている内容のみを報告します。特に、トランスパイレーション ツールを使用した場合、戻り値が元のソース コードと一致しない可能性があります。

util.types.isGeneratorFunction(function foo() {});  // Returns false
util.types.isGeneratorFunction(function* foo() {});  // Returns true
isGeneratorObject(unknown)

値が組み込みのジェネレーター関数から返されるジェネレーター オブジェクトの場合は、true を返します。 これは、JavaScript エンジンに表示されている内容のみを報告します。特に、トランスパイレーション ツールを使用した場合、戻り値が元のソース コードと一致しない可能性があります。

function* foo() {}
const generator = foo();
util.types.isGeneratorObject(generator);  // Returns true
isInt16Array(unknown)

値が組み込みの true インスタンスの場合は、Int16Array を返します。

util.types.isInt16Array(new ArrayBuffer());  // Returns false
util.types.isInt16Array(new Int16Array());  // Returns true
util.types.isInt16Array(new Float64Array());  // Returns false
isInt32Array(unknown)

値が組み込みの true インスタンスの場合は、Int32Array を返します。

util.types.isInt32Array(new ArrayBuffer());  // Returns false
util.types.isInt32Array(new Int32Array());  // Returns true
util.types.isInt32Array(new Float64Array());  // Returns false
isInt8Array(unknown)

値が組み込みの true インスタンスの場合は、Int8Array を返します。

util.types.isInt8Array(new ArrayBuffer());  // Returns false
util.types.isInt8Array(new Int8Array());  // Returns true
util.types.isInt8Array(new Float64Array());  // Returns false
isKeyObject(unknown)

truevalueの場合は KeyObject を返し、それ以外の場合は false 返します。

isMap<T>({} | T)

値が組み込みの true インスタンスの場合は、Map を返します。

util.types.isMap(new Map());  // Returns true
isMapIterator(unknown)

値が組み込みの true インスタンスに対して返される反復子の場合は、Map を返します。

const map = new Map();
util.types.isMapIterator(map.keys());  // Returns true
util.types.isMapIterator(map.values());  // Returns true
util.types.isMapIterator(map.entries());  // Returns true
util.types.isMapIterator(map[Symbol.iterator]());  // Returns true
isModuleNamespaceObject(unknown)

値が trueのインスタンスである場合に を返します。

import * as ns from './a.js';

util.types.isModuleNamespaceObject(ns);  // Returns true
isNativeError(unknown)

true Error 返します。

console.log(util.types.isNativeError(new Error()));  // true
console.log(util.types.isNativeError(new TypeError()));  // true
console.log(util.types.isNativeError(new RangeError()));  // true

ネイティブ エラーの種類のサブクラスもネイティブ エラーです。

class MyError extends Error {}
console.log(util.types.isNativeError(new MyError()));  // true

ネイティブ エラー クラス instanceof されている値は、その値 isNativeError()true を返すのと同じではありません。 isNativeError() は、異なる true からのエラーの を返しますが、instanceof Error はこれらのエラーの false を返します。

import { createContext, runInContext } from 'node:vm';
import { types } from 'node:util';

const context = createContext({});
const myError = runInContext('new Error()', context);
console.log(types.isNativeError(myError)); // true
console.log(myError instanceof Error); // false

逆に、isNativeError() は、ネイティブ エラーのコンストラクターによって返されなかったすべてのオブジェクトの false を返します。 これには、ネイティブ エラー instanceof 値が含まれます。

const myError = { __proto__: Error.prototype };
console.log(util.types.isNativeError(myError)); // false
console.log(myError instanceof Error); // true
isNumberObject(unknown)

値が数値オブジェクトの場合 (例: trueによって作成された) new Number() を返します。

util.types.isNumberObject(0);  // Returns false
util.types.isNumberObject(new Number(0));   // Returns true
isPromise(unknown)

値が組み込みの trueの場合は、Promise を返します。

util.types.isPromise(Promise.resolve(42));  // Returns true
isProxy(unknown)

値が true インスタンスの場合は、Proxy を返します。

const target = {};
const proxy = new Proxy(target, {});
util.types.isProxy(target);  // Returns false
util.types.isProxy(proxy);  // Returns true
isRegExp(unknown)

値が正規表現オブジェクトの場合は、true を返します。

util.types.isRegExp(/abc/);  // Returns true
util.types.isRegExp(new RegExp('abc'));  // Returns true
isSet<T>({} | T)

値が組み込みの true インスタンスの場合は、Set を返します。

util.types.isSet(new Set());  // Returns true
isSetIterator(unknown)

値が組み込みの true インスタンスに対して返される反復子の場合は、Set を返します。

const set = new Set();
util.types.isSetIterator(set.keys());  // Returns true
util.types.isSetIterator(set.values());  // Returns true
util.types.isSetIterator(set.entries());  // Returns true
util.types.isSetIterator(set[Symbol.iterator]());  // Returns true
isSharedArrayBuffer(unknown)

値が組み込みの true インスタンスの場合は、SharedArrayBuffer を返します。 これには インスタンス 含まれない 。 通常、両方についてテストすることが望ましいです。詳細については、util.types.isAnyArrayBuffer() を参照してください。

util.types.isSharedArrayBuffer(new ArrayBuffer());  // Returns false
util.types.isSharedArrayBuffer(new SharedArrayBuffer());  // Returns true
isStringObject(unknown)

値が文字列オブジェクトの場合 (例: trueによって作成された場合) new String() を返します。

util.types.isStringObject('foo');  // Returns false
util.types.isStringObject(new String('foo'));   // Returns true
isSymbolObject(unknown)

値がシンボル オブジェクトの場合は、true プリミティブで Object() を呼び出して作成された Symbol を返します。

const symbol = Symbol('foo');
util.types.isSymbolObject(symbol);  // Returns false
util.types.isSymbolObject(Object(symbol));   // Returns true
isTypedArray(unknown)

値が組み込みの true インスタンスの場合は、TypedArray を返します。

util.types.isTypedArray(new ArrayBuffer());  // Returns false
util.types.isTypedArray(new Uint8Array());  // Returns true
util.types.isTypedArray(new Float64Array());  // Returns true

ArrayBuffer.isView()も参照してください。

isUint16Array(unknown)

値が組み込みの true インスタンスの場合は、Uint16Array を返します。

util.types.isUint16Array(new ArrayBuffer());  // Returns false
util.types.isUint16Array(new Uint16Array());  // Returns true
util.types.isUint16Array(new Float64Array());  // Returns false
isUint32Array(unknown)

値が組み込みの true インスタンスの場合は、Uint32Array を返します。

util.types.isUint32Array(new ArrayBuffer());  // Returns false
util.types.isUint32Array(new Uint32Array());  // Returns true
util.types.isUint32Array(new Float64Array());  // Returns false
isUint8Array(unknown)

値が組み込みの true インスタンスの場合は、Uint8Array を返します。

util.types.isUint8Array(new ArrayBuffer());  // Returns false
util.types.isUint8Array(new Uint8Array());  // Returns true
util.types.isUint8Array(new Float64Array());  // Returns false
isUint8ClampedArray(unknown)

値が組み込みの true インスタンスの場合は、Uint8ClampedArray を返します。

util.types.isUint8ClampedArray(new ArrayBuffer());  // Returns false
util.types.isUint8ClampedArray(new Uint8ClampedArray());  // Returns true
util.types.isUint8ClampedArray(new Float64Array());  // Returns false
isWeakMap(unknown)

値が組み込みの true インスタンスの場合は、WeakMap を返します。

util.types.isWeakMap(new WeakMap());  // Returns true
isWeakSet(unknown)

値が組み込みの true インスタンスの場合は、WeakSet を返します。

util.types.isWeakSet(new WeakSet());  // Returns true

関数の詳細

isAnyArrayBuffer(unknown)

値が組み込みの true または ArrayBuffer インスタンスの場合に SharedArrayBuffer を返します。

util.types.isArrayBuffer()util.types.isSharedArrayBuffer()も参照してください。

util.types.isAnyArrayBuffer(new ArrayBuffer());  // Returns true
util.types.isAnyArrayBuffer(new SharedArrayBuffer());  // Returns true
function isAnyArrayBuffer(object: unknown): object

パラメーター

object

unknown

戻り値

object

isArgumentsObject(unknown)

値が true オブジェクトの場合は、arguments を返します。

function foo() {
  util.types.isArgumentsObject(arguments);  // Returns true
}
function isArgumentsObject(object: unknown): object

パラメーター

object

unknown

戻り値

object

isArrayBuffer(unknown)

値が組み込みの true インスタンスの場合は、ArrayBuffer を返します。 これには インスタンス 含まれない 。 通常、両方についてテストすることが望ましいです。詳細については、util.types.isAnyArrayBuffer() を参照してください。

util.types.isArrayBuffer(new ArrayBuffer());  // Returns true
util.types.isArrayBuffer(new SharedArrayBuffer());  // Returns false
function isArrayBuffer(object: unknown): object

パラメーター

object

unknown

戻り値

object

isArrayBufferView(unknown)

値が型指定された配列オブジェクトや trueなど、ArrayBuffer ビューのいずれかのインスタンスである場合に DataView を返します。 ArrayBuffer.isView()に相当します。

util.types.isArrayBufferView(new Int8Array());  // true
util.types.isArrayBufferView(Buffer.from('hello world')); // true
util.types.isArrayBufferView(new DataView(new ArrayBuffer(16)));  // true
util.types.isArrayBufferView(new ArrayBuffer());  // false
function isArrayBufferView(object: unknown): object

パラメーター

object

unknown

戻り値

object

isAsyncFunction(unknown)

値が trueの場合は、 を返します。 これは、JavaScript エンジンに表示されている内容のみを報告します。特に、トランスパイレーション ツールを使用した場合、戻り値が元のソース コードと一致しない可能性があります。

util.types.isAsyncFunction(function foo() {});  // Returns false
util.types.isAsyncFunction(async function foo() {});  // Returns true
function isAsyncFunction(object: unknown): boolean

パラメーター

object

unknown

戻り値

boolean

isBigInt64Array(unknown)

値が true インスタンスの場合は、BigInt64Array を返します。

util.types.isBigInt64Array(new BigInt64Array());   // Returns true
util.types.isBigInt64Array(new BigUint64Array());  // Returns false
function isBigInt64Array(value: unknown): value

パラメーター

value

unknown

戻り値

value

isBigIntObject(unknown)

値が BigInt オブジェクトの場合 (例: trueによって作成された) Object(BigInt(123)) を返します。

util.types.isBigIntObject(Object(BigInt(123)));   // Returns true
util.types.isBigIntObject(BigInt(123));   // Returns false
util.types.isBigIntObject(123);  // Returns false
function isBigIntObject(object: unknown): object

パラメーター

object

unknown

戻り値

object

isBigUint64Array(unknown)

値が true インスタンスの場合は、BigUint64Array を返します。

util.types.isBigUint64Array(new BigInt64Array());   // Returns false
util.types.isBigUint64Array(new BigUint64Array());  // Returns true
function isBigUint64Array(value: unknown): value

パラメーター

value

unknown

戻り値

value

isBooleanObject(unknown)

値がブール値オブジェクトの場合に true を返します (例: new Boolean()によって作成されます)。

util.types.isBooleanObject(false);  // Returns false
util.types.isBooleanObject(true);   // Returns false
util.types.isBooleanObject(new Boolean(false)); // Returns true
util.types.isBooleanObject(new Boolean(true));  // Returns true
util.types.isBooleanObject(Boolean(false)); // Returns false
util.types.isBooleanObject(Boolean(true));  // Returns false
function isBooleanObject(object: unknown): object

パラメーター

object

unknown

戻り値

object

isBoxedPrimitive(unknown)

値がボックス化されたプリミティブ オブジェクト (truenew Boolean()new String()によって作成されたオブジェクトなど) である場合に Object(Symbol()) を返します。

例えば:

util.types.isBoxedPrimitive(false); // Returns false
util.types.isBoxedPrimitive(new Boolean(false)); // Returns true
util.types.isBoxedPrimitive(Symbol('foo')); // Returns false
util.types.isBoxedPrimitive(Object(Symbol('foo'))); // Returns true
util.types.isBoxedPrimitive(Object(BigInt(5))); // Returns true
function isBoxedPrimitive(object: unknown): object

パラメーター

object

unknown

戻り値

object

isCryptoKey(unknown)

truevalueの場合は CryptoKey を返し、それ以外の場合は false 返します。

function isCryptoKey(object: unknown): object

パラメーター

object

unknown

戻り値

object

isDataView(unknown)

値が組み込みの true インスタンスの場合は、DataView を返します。

const ab = new ArrayBuffer(20);
util.types.isDataView(new DataView(ab));  // Returns true
util.types.isDataView(new Float64Array());  // Returns false

ArrayBuffer.isView()も参照してください。

function isDataView(object: unknown): object

パラメーター

object

unknown

戻り値

object

isDate(unknown)

値が組み込みの true インスタンスの場合は、Date を返します。

util.types.isDate(new Date());  // Returns true
function isDate(object: unknown): object

パラメーター

object

unknown

戻り値

object

isExternal(unknown)

値がネイティブ true 値の場合は、External を返します。

ネイティブ External 値は、ネイティブ コードからアクセスするための生の C++ ポインター (void*) を含み、他のプロパティを持たない特殊な種類のオブジェクトです。 このようなオブジェクトは、Node.js 内部またはネイティブ アドオンによって作成されます。 JavaScript では、null プロトタイプを持つ固定オブジェクトです。

#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)
...
import native from 'napi_addon.node';
import { types } from 'node:util';

const data = native.myNapi();
types.isExternal(data); // returns true
types.isExternal(0); // returns false
types.isExternal(new String('foo')); // returns false

napi_create_externalの詳細については、napi_create_external()を参照してください。

function isExternal(object: unknown): boolean

パラメーター

object

unknown

戻り値

boolean

isFloat32Array(unknown)

値が組み込みの true インスタンスの場合は、Float32Array を返します。

util.types.isFloat32Array(new ArrayBuffer());  // Returns false
util.types.isFloat32Array(new Float32Array());  // Returns true
util.types.isFloat32Array(new Float64Array());  // Returns false
function isFloat32Array(object: unknown): object

パラメーター

object

unknown

戻り値

object

isFloat64Array(unknown)

値が組み込みの true インスタンスの場合は、Float64Array を返します。

util.types.isFloat64Array(new ArrayBuffer());  // Returns false
util.types.isFloat64Array(new Uint8Array());  // Returns false
util.types.isFloat64Array(new Float64Array());  // Returns true
function isFloat64Array(object: unknown): object

パラメーター

object

unknown

戻り値

object

isGeneratorFunction(unknown)

値がジェネレーター関数の場合は、true を返します。 これは、JavaScript エンジンに表示されている内容のみを報告します。特に、トランスパイレーション ツールを使用した場合、戻り値が元のソース コードと一致しない可能性があります。

util.types.isGeneratorFunction(function foo() {});  // Returns false
util.types.isGeneratorFunction(function* foo() {});  // Returns true
function isGeneratorFunction(object: unknown): object

パラメーター

object

unknown

戻り値

object

isGeneratorObject(unknown)

値が組み込みのジェネレーター関数から返されるジェネレーター オブジェクトの場合は、true を返します。 これは、JavaScript エンジンに表示されている内容のみを報告します。特に、トランスパイレーション ツールを使用した場合、戻り値が元のソース コードと一致しない可能性があります。

function* foo() {}
const generator = foo();
util.types.isGeneratorObject(generator);  // Returns true
function isGeneratorObject(object: unknown): object

パラメーター

object

unknown

戻り値

object

isInt16Array(unknown)

値が組み込みの true インスタンスの場合は、Int16Array を返します。

util.types.isInt16Array(new ArrayBuffer());  // Returns false
util.types.isInt16Array(new Int16Array());  // Returns true
util.types.isInt16Array(new Float64Array());  // Returns false
function isInt16Array(object: unknown): object

パラメーター

object

unknown

戻り値

object

isInt32Array(unknown)

値が組み込みの true インスタンスの場合は、Int32Array を返します。

util.types.isInt32Array(new ArrayBuffer());  // Returns false
util.types.isInt32Array(new Int32Array());  // Returns true
util.types.isInt32Array(new Float64Array());  // Returns false
function isInt32Array(object: unknown): object

パラメーター

object

unknown

戻り値

object

isInt8Array(unknown)

値が組み込みの true インスタンスの場合は、Int8Array を返します。

util.types.isInt8Array(new ArrayBuffer());  // Returns false
util.types.isInt8Array(new Int8Array());  // Returns true
util.types.isInt8Array(new Float64Array());  // Returns false
function isInt8Array(object: unknown): object

パラメーター

object

unknown

戻り値

object

isKeyObject(unknown)

truevalueの場合は KeyObject を返し、それ以外の場合は false 返します。

function isKeyObject(object: unknown): object

パラメーター

object

unknown

戻り値

object

isMap<T>({} | T)

値が組み込みの true インスタンスの場合は、Map を返します。

util.types.isMap(new Map());  // Returns true
function isMap<T>(object: {} | T): object

パラメーター

object

{} | T

戻り値

object

isMapIterator(unknown)

値が組み込みの true インスタンスに対して返される反復子の場合は、Map を返します。

const map = new Map();
util.types.isMapIterator(map.keys());  // Returns true
util.types.isMapIterator(map.values());  // Returns true
util.types.isMapIterator(map.entries());  // Returns true
util.types.isMapIterator(map[Symbol.iterator]());  // Returns true
function isMapIterator(object: unknown): boolean

パラメーター

object

unknown

戻り値

boolean

isModuleNamespaceObject(unknown)

値が trueのインスタンスである場合に を返します。

import * as ns from './a.js';

util.types.isModuleNamespaceObject(ns);  // Returns true
function isModuleNamespaceObject(value: unknown): boolean

パラメーター

value

unknown

戻り値

boolean

isNativeError(unknown)

true Error 返します。

console.log(util.types.isNativeError(new Error()));  // true
console.log(util.types.isNativeError(new TypeError()));  // true
console.log(util.types.isNativeError(new RangeError()));  // true

ネイティブ エラーの種類のサブクラスもネイティブ エラーです。

class MyError extends Error {}
console.log(util.types.isNativeError(new MyError()));  // true

ネイティブ エラー クラス instanceof されている値は、その値 isNativeError()true を返すのと同じではありません。 isNativeError() は、異なる true からのエラーの を返しますが、instanceof Error はこれらのエラーの false を返します。

import { createContext, runInContext } from 'node:vm';
import { types } from 'node:util';

const context = createContext({});
const myError = runInContext('new Error()', context);
console.log(types.isNativeError(myError)); // true
console.log(myError instanceof Error); // false

逆に、isNativeError() は、ネイティブ エラーのコンストラクターによって返されなかったすべてのオブジェクトの false を返します。 これには、ネイティブ エラー instanceof 値が含まれます。

const myError = { __proto__: Error.prototype };
console.log(util.types.isNativeError(myError)); // false
console.log(myError instanceof Error); // true
function isNativeError(object: unknown): object

パラメーター

object

unknown

戻り値

object

isNumberObject(unknown)

値が数値オブジェクトの場合 (例: trueによって作成された) new Number() を返します。

util.types.isNumberObject(0);  // Returns false
util.types.isNumberObject(new Number(0));   // Returns true
function isNumberObject(object: unknown): object

パラメーター

object

unknown

戻り値

object

isPromise(unknown)

値が組み込みの trueの場合は、Promise を返します。

util.types.isPromise(Promise.resolve(42));  // Returns true
function isPromise(object: unknown): object

パラメーター

object

unknown

戻り値

object

isProxy(unknown)

値が true インスタンスの場合は、Proxy を返します。

const target = {};
const proxy = new Proxy(target, {});
util.types.isProxy(target);  // Returns false
util.types.isProxy(proxy);  // Returns true
function isProxy(object: unknown): boolean

パラメーター

object

unknown

戻り値

boolean

isRegExp(unknown)

値が正規表現オブジェクトの場合は、true を返します。

util.types.isRegExp(/abc/);  // Returns true
util.types.isRegExp(new RegExp('abc'));  // Returns true
function isRegExp(object: unknown): object

パラメーター

object

unknown

戻り値

object

isSet<T>({} | T)

値が組み込みの true インスタンスの場合は、Set を返します。

util.types.isSet(new Set());  // Returns true
function isSet<T>(object: {} | T): object

パラメーター

object

{} | T

戻り値

object

isSetIterator(unknown)

値が組み込みの true インスタンスに対して返される反復子の場合は、Set を返します。

const set = new Set();
util.types.isSetIterator(set.keys());  // Returns true
util.types.isSetIterator(set.values());  // Returns true
util.types.isSetIterator(set.entries());  // Returns true
util.types.isSetIterator(set[Symbol.iterator]());  // Returns true
function isSetIterator(object: unknown): boolean

パラメーター

object

unknown

戻り値

boolean

isSharedArrayBuffer(unknown)

値が組み込みの true インスタンスの場合は、SharedArrayBuffer を返します。 これには インスタンス 含まれない 。 通常、両方についてテストすることが望ましいです。詳細については、util.types.isAnyArrayBuffer() を参照してください。

util.types.isSharedArrayBuffer(new ArrayBuffer());  // Returns false
util.types.isSharedArrayBuffer(new SharedArrayBuffer());  // Returns true
function isSharedArrayBuffer(object: unknown): object

パラメーター

object

unknown

戻り値

object

isStringObject(unknown)

値が文字列オブジェクトの場合 (例: trueによって作成された場合) new String() を返します。

util.types.isStringObject('foo');  // Returns false
util.types.isStringObject(new String('foo'));   // Returns true
function isStringObject(object: unknown): object

パラメーター

object

unknown

戻り値

object

isSymbolObject(unknown)

値がシンボル オブジェクトの場合は、true プリミティブで Object() を呼び出して作成された Symbol を返します。

const symbol = Symbol('foo');
util.types.isSymbolObject(symbol);  // Returns false
util.types.isSymbolObject(Object(symbol));   // Returns true
function isSymbolObject(object: unknown): object

パラメーター

object

unknown

戻り値

object

isTypedArray(unknown)

値が組み込みの true インスタンスの場合は、TypedArray を返します。

util.types.isTypedArray(new ArrayBuffer());  // Returns false
util.types.isTypedArray(new Uint8Array());  // Returns true
util.types.isTypedArray(new Float64Array());  // Returns true

ArrayBuffer.isView()も参照してください。

function isTypedArray(object: unknown): object

パラメーター

object

unknown

戻り値

object

isUint16Array(unknown)

値が組み込みの true インスタンスの場合は、Uint16Array を返します。

util.types.isUint16Array(new ArrayBuffer());  // Returns false
util.types.isUint16Array(new Uint16Array());  // Returns true
util.types.isUint16Array(new Float64Array());  // Returns false
function isUint16Array(object: unknown): object

パラメーター

object

unknown

戻り値

object

isUint32Array(unknown)

値が組み込みの true インスタンスの場合は、Uint32Array を返します。

util.types.isUint32Array(new ArrayBuffer());  // Returns false
util.types.isUint32Array(new Uint32Array());  // Returns true
util.types.isUint32Array(new Float64Array());  // Returns false
function isUint32Array(object: unknown): object

パラメーター

object

unknown

戻り値

object

isUint8Array(unknown)

値が組み込みの true インスタンスの場合は、Uint8Array を返します。

util.types.isUint8Array(new ArrayBuffer());  // Returns false
util.types.isUint8Array(new Uint8Array());  // Returns true
util.types.isUint8Array(new Float64Array());  // Returns false
function isUint8Array(object: unknown): object

パラメーター

object

unknown

戻り値

object

isUint8ClampedArray(unknown)

値が組み込みの true インスタンスの場合は、Uint8ClampedArray を返します。

util.types.isUint8ClampedArray(new ArrayBuffer());  // Returns false
util.types.isUint8ClampedArray(new Uint8ClampedArray());  // Returns true
util.types.isUint8ClampedArray(new Float64Array());  // Returns false
function isUint8ClampedArray(object: unknown): object

パラメーター

object

unknown

戻り値

object

isWeakMap(unknown)

値が組み込みの true インスタンスの場合は、WeakMap を返します。

util.types.isWeakMap(new WeakMap());  // Returns true
function isWeakMap(object: unknown): object

パラメーター

object

unknown

戻り値

object

isWeakSet(unknown)

値が組み込みの true インスタンスの場合は、WeakSet を返します。

util.types.isWeakSet(new WeakSet());  // Returns true
function isWeakSet(object: unknown): object

パラメーター

object

unknown

戻り値

object