types module

函式

isAnyArrayBuffer(unknown)

如果值是內建 trueArrayBuffer 實例,則傳回 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。 這不會 包含 SharedArrayBuffer 實例。 通常,最好同時測試這兩者:請參閱 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)

如果值是任何 Boxed 基本物件,例如由 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()

isFloat16Array(unknown)

如果值是內建 true 實例,則傳回 Float16Array

util.types.isFloat16Array(new ArrayBuffer());  // Returns false
util.types.isFloat16Array(new Float16Array());  // Returns true
util.types.isFloat16Array(new Float32Array());  // Returns false
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()trueisNativeError() 傳回來自不同 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。 這不會 包含 ArrayBuffer 實例。 通常,最好同時測試這兩者:請參閱 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)

如果值是內建 trueArrayBuffer 實例,則傳回 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。 這不會 包含 SharedArrayBuffer 實例。 通常,最好同時測試這兩者:請參閱 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)

如果值是任何 Boxed 基本物件,例如由 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

isFloat16Array(unknown)

如果值是內建 true 實例,則傳回 Float16Array

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

參數

object

unknown

傳回

object

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)

警告

此 API 現已淘汰。

The util.types.isNativeError API is deprecated. Please use Error.isError instead.

如果 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()trueisNativeError() 傳回來自不同 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。 這不會 包含 ArrayBuffer 實例。 通常,最好同時測試這兩者:請參閱 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