util.isError(object)


稳定性: 0 - 弃用: 改为使用 util.types.isNativeError()

如果给定的 objectError,则返回 true。 否则,返回 false

const util = require('node:util');

util.isError(new Error());
// 返回: true
util.isError(new TypeError());
// 返回: true
util.isError({ name: 'Error', message: 'an error occurred' });
// 返回: false

此方法依赖于 Object.prototype.toString() 行为。 当 object 参数操作 @@toStringTag 时,可能会得到错误的结果。

const util = require('node:util');
const obj = { name: 'Error', message: 'an error occurred' };

util.isError(obj);
// 返回: false
obj[Symbol.toStringTag] = 'Error';
util.isError(obj);
// 返回: true

Stability: 0 - Deprecated: Use util.types.isNativeError() instead.

Returns true if the given object is an Error. Otherwise, returns false.

const util = require('node:util');

util.isError(new Error());
// Returns: true
util.isError(new TypeError());
// Returns: true
util.isError({ name: 'Error', message: 'an error occurred' });
// Returns: false

This method relies on Object.prototype.toString() behavior. It is possible to obtain an incorrect result when the object argument manipulates @@toStringTag.

const util = require('node:util');
const obj = { name: 'Error', message: 'an error occurred' };

util.isError(obj);
// Returns: false
obj[Symbol.toStringTag] = 'Error';
util.isError(obj);
// Returns: true