node.js中的断言

assert.ok(value, message):如果value不为真,则抛出一个AssertionError,可选地包含message。

javascript 复制代码
const assert = require('assert');
assert.ok(true);  // 没有错误
assert.ok(false, '这里应该是true');  // 抛出 AssertionError: 这里应该是true

assert.equal(actual, expected, message):如果actual和expected不相等,则抛出AssertionError。

javascript 复制代码
const assert = require('assert');
assert.equal(1, 1);  // 没有错误
assert.equal(1, 2, '这里应该相等');  // 抛出 AssertionError: 这里应该相等

assert.strictEqual(actual, expected, message):类似于assert.equal(),但使用了严格的相等性(===)。

javascript 复制代码
const assert = require('assert');
assert.strictEqual(1, '1');  // 抛出 AssertionError: 1 === '1'

assert.deepEqual(actual, expected, message):如果actual和expected深度相等,则不会抛出错误。这个方法适用于对象比较。

javascript 复制代码
const assert = require('assert');
assert.deepEqual({ a: 1 }, { a: 1 });  // 没有错误
assert.deepEqual({ a: 1 }, { a: '1' }, '这里应该相等');  // 抛出 AssertionError: 这里应该相等
相关推荐
swipe13 小时前
从 0 到 1 实现大文件上传:分片、秒传、断点续传、暂停、重试与服务端合并
前端·javascript·面试
kyriewen14 小时前
AI 生成的代码能跑就行?这 5 个坑迟早炸
前端·javascript·ai编程
kisshyshy14 小时前
🍦 雪糕、食堂、火车厢:三幅漫画吃透栈、队列与链表
javascript·算法
胡志辉15 小时前
从v8源码和react深入浅出理解 JavaScript 作用域链与闭包
前端·javascript
Bolt15 小时前
TypeScript 7.0 来了:当 tsc 用 Go 重写之后
javascript·typescript·go
阳火锅17 小时前
😭测试小姐姐终于不骂我了!这个提BUG神器太香了...
前端·javascript·面试
林希_Rachel_傻希希19 小时前
js里面的proxy理解。以及vue3响应式数据设计底层
前端·javascript·面试
阿黎梨梨19 小时前
AI Loop:告别“人肉写提示词”,让代码替你“鞭策”AI
javascript·人工智能
竹林8181 天前
用 wagmi v2 + viem 监听链上事件,我踩了三天坑终于搞懂了实时日志与历史补全
javascript
只一1 天前
😭从回调地狱到 async/await:一文打通 Ajax 与 JS 异步编程
javascript