- assert断言
- async_hooks异步钩子
- async_hooks/context异步上下文
- buffer缓冲区
- C++插件
- C/C++插件(使用Node-API)
- C++嵌入器
- child_process子进程
- cluster集群
- CLI命令行
- console控制台
- Corepack核心包
- crypto加密
- crypto/webcrypto网络加密
- debugger调试器
- deprecation弃用
- dgram数据报
- diagnostics_channel诊断通道
- dns域名服务器
- domain域
- Error错误
- events事件触发器
- fs文件系统
- global全局变量
- http超文本传输协议
- http2超文本传输协议2.0
- https安全超文本传输协议
- inspector检查器
- Intl国际化
- module模块
- module/cjsCommonJS模块
- module/esmECMAScript模块
- module/package包模块
- net网络
- os操作系统
- path路径
- perf_hooks性能钩子
- policy安全策略
- process进程
- punycode域名代码
- querystring查询字符串
- readline逐行读取
- repl交互式解释器
- report诊断报告
- stream流
- stream/web网络流
- string_decoder字符串解码器
- test测试
- timers定时器
- tls安全传输层
- trace_events跟踪事件
- tty终端
- url网址
- util实用工具
- v8引擎
- vm虚拟机
- wasi网络汇编系统接口
- worker_threads工作线程
- zlib压缩
Node.js v18.7.0 文档
- Node.js 18.7.0
-
►
目录
- assert 断言
- 严格断言模式
- 旧版断言模式
- assert.AssertionError 类
assert.CallTracker
类assert(value[, message])
assert.deepEqual(actual, expected[, message])
assert.deepStrictEqual(actual, expected[, message])
assert.doesNotMatch(string, regexp[, message])
assert.doesNotReject(asyncFn[, error][, message])
assert.doesNotThrow(fn[, error][, message])
assert.equal(actual, expected[, message])
assert.fail([message])
assert.fail(actual, expected[, message[, operator[, stackStartFn]]])
assert.ifError(value)
assert.match(string, regexp[, message])
assert.notDeepEqual(actual, expected[, message])
assert.notDeepStrictEqual(actual, expected[, message])
assert.notEqual(actual, expected[, message])
assert.notStrictEqual(actual, expected[, message])
assert.ok(value[, message])
assert.rejects(asyncFn[, error][, message])
assert.strictEqual(actual, expected[, message])
assert.throws(fn[, error][, message])
- assert 断言
-
►
索引
- assert 断言
- async_hooks 异步钩子
- async_hooks/context 异步上下文
- buffer 缓冲区
- C++插件
- C/C++插件(使用Node-API)
- C++嵌入器
- child_process 子进程
- cluster 集群
- CLI 命令行
- console 控制台
- Corepack 核心包
- crypto 加密
- crypto/webcrypto 网络加密
- debugger 调试器
- deprecation 弃用
- dgram 数据报
- diagnostics_channel 诊断通道
- dns 域名服务器
- domain 域
- Error 错误
- events 事件触发器
- fs 文件系统
- global 全局变量
- http 超文本传输协议
- http2 超文本传输协议2.0
- https 安全超文本传输协议
- inspector 检查器
- Intl 国际化
- module 模块
- module/cjs CommonJS模块
- module/esm ECMAScript模块
- module/package 包模块
- net 网络
- os 操作系统
- path 路径
- perf_hooks 性能钩子
- policy 安全策略
- process 进程
- punycode 域名代码
- querystring 查询字符串
- readline 逐行读取
- repl 交互式解释器
- report 诊断报告
- stream 流
- stream/web 网络流
- string_decoder 字符串解码器
- test 测试
- timers 定时器
- tls 安全传输层
- trace_events 跟踪事件
- tty 终端
- url 网址
- util 实用工具
- v8 引擎
- vm 虚拟机
- wasi 网络汇编系统接口
- worker_threads 工作线程
- zlib 压缩
- ► 其他版本
- 文档搜索
- 会员登录
目录
- assert 断言
- 严格断言模式
- 旧版断言模式
- assert.AssertionError 类
assert.CallTracker
类assert(value[, message])
assert.deepEqual(actual, expected[, message])
assert.deepStrictEqual(actual, expected[, message])
assert.doesNotMatch(string, regexp[, message])
assert.doesNotReject(asyncFn[, error][, message])
assert.doesNotThrow(fn[, error][, message])
assert.equal(actual, expected[, message])
assert.fail([message])
assert.fail(actual, expected[, message[, operator[, stackStartFn]]])
assert.ifError(value)
assert.match(string, regexp[, message])
assert.notDeepEqual(actual, expected[, message])
assert.notDeepStrictEqual(actual, expected[, message])
assert.notEqual(actual, expected[, message])
assert.notStrictEqual(actual, expected[, message])
assert.ok(value[, message])
assert.rejects(asyncFn[, error][, message])
assert.strictEqual(actual, expected[, message])
assert.throws(fn[, error][, message])
assert 断言#
node:assert
模块提供了一组用于验证不变量的断言函数。
严格断言模式#
在严格断言模式下,非严格方法的行为与其对应的严格方法相同。
例如,assert.deepEqual()
的行为类似于 assert.deepStrictEqual()
。
旧版断言模式#
旧版断言模式在以下方法中使用 ==
运算符:
assert.AssertionError 类#
表示断言的失败。
node:assert
模块抛出的所有错误都是 AssertionError
类的实例。
new assert.AssertionError(options)
#
Error
的子类,表示断言的失败。
assert.CallTracker
类#
此功能目前处于实验阶段,行为可能仍会发生变化。
new assert.CallTracker()
#
创建新的 CallTracker
对象,其可用于跟踪函数是否被调用了特定次数。
必须调用 tracker.verify()
才能进行验证。
通常的模式是在 process.on('exit')
句柄中调用。
tracker.calls([fn][, exact])
#
预计封装函数将被精确调用 exact
次。
如果在调用 tracker.verify()
时函数没有被精确调用 exact
次,那么 tracker.verify()
将抛出错误。
tracker.report()
#
数组包含有关未调用预期次数的函数的预期和实际调用次数的信息。
tracker.verify()
#
遍历传给 tracker.calls()
的函数列表,对于未按预期调用次数的函数将抛出错误。
assert(value[, message])
#
assert.ok()
的别名。
assert.deepEqual(actual, expected[, message])
#
严格断言模式
比较详情#
以下示例不会抛出 AssertionError
,因为使用 ==
运算符比较原始值。
assert.deepStrictEqual(actual, expected[, message])
#
测试 actual
和 expected
参数之间的深度相等。
"深度"相等意味着子对象的可枚举"自有"属性也按照以下规则递归地评估。
比较详情#
如果值不相等,则抛出 AssertionError
,其 message
属性设置为等于 message
参数的值。
如果未定义 message
参数,则分配默认错误消息。
如果 message
参数是 Error
的实例,则将抛出错误而不是 AssertionError
。
assert.doesNotMatch(string, regexp[, message])
#
期望 string
输入与正则表达式不匹配。
assert.doesNotReject(asyncFn[, error][, message])
#
等待 asyncFn
promise,或者,如果 asyncFn
是函数,则立即调用该函数并等待返回的 promise 完成。
然后会检查 promise 是否没有被拒绝。
assert.doesNotThrow(fn[, error][, message])
#
断言函数 fn
不会抛出错误。
assert.equal(actual, expected[, message])
#
严格断言模式
assert.fail([message])
#
抛出带有提供的错误消息或默认错误消息的 AssertionError
。
如果 message
参数是 Error
的实例,则将抛出错误而不是 AssertionError
。
assert.fail(actual, expected[, message[, operator[, stackStartFn]]])
#
如果 message
为假,则错误消息设置为由提供的 operator
分隔的 actual
和 expected
的值。
如果只提供了两个 actual
和 expected
参数,则 operator
将默认为 '!='
。
如果 message
作为第三个参数提供,则它将用作错误消息,其他参数将作为抛出对象的属性存储。
如果提供了 stackStartFn
,则该函数之上的所有堆栈帧都将从堆栈跟踪中删除(参见 Error.captureStackTrace
)。
如果没有给出参数,则将使用默认消息 Failed
。
assert.ifError(value)
#
如果 value
不是 undefined
或 null
,则抛出 value
。
这在回调中测试 error
参数时很有用。
堆栈跟踪包含来自传给 ifError()
的错误的所有帧,包括 ifError()
本身的潜在新帧。
assert.match(string, regexp[, message])
#
期望 string
输入与正则表达式匹配。
assert.notDeepEqual(actual, expected[, message])
#
严格断言模式
assert.notDeepStrictEqual(actual, expected[, message])
#
检验深度严格不相等。
assert.deepStrictEqual()
的相反。
assert.notEqual(actual, expected[, message])
#
严格断言模式
assert.notStrictEqual(actual, expected[, message])
#
测试由 Object.is()
确定的 actual
和 expected
参数之间的严格不相等。
assert.ok(value[, message])
#
测试 value
是否为真。
相当于 assert.equal(!!value, true, message)
。
assert.rejects(asyncFn[, error][, message])
#
等待 asyncFn
promise,或者,如果 asyncFn
是函数,则立即调用该函数并等待返回的 promise 完成。
然后将检查 promise 是否被拒绝。
assert.strictEqual(actual, expected[, message])
#
测试由 Object.is()
确定的 actual
和 expected
参数之间的严格相等。
assert.throws(fn[, error][, message])
#
期望函数 fn
抛出错误。