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: 这里应该相等
相关推荐
daols886 分钟前
vxe-table 实现数据分组统计与表尾合计
前端·javascript·vue.js·vxe-table
向日的葵0068 分钟前
Vue 函数定义、事件绑定与列表渲染精讲
前端·javascript·vue.js
wgc2k2 小时前
Node.js游戏服务器项目移植-2: 用TypeScript还是Javascript
服务器·游戏·node.js
小陈同学呦10 小时前
前端如何处理订单状态导航的数据竞态问题
前端·javascript
开发者每周简报10 小时前
网海三部曲·无名宗师传
javascript·人工智能
之歆12 小时前
Day01_ES6+ 专业指南:从基础到实战的现代JavaScript开发(下)
前端·javascript·es6
kyriewen13 小时前
AI生成代码快如闪电,但我修了三个小时——它到底帮了谁?
前端·javascript·ai编程
卷帘依旧14 小时前
v8引擎和libuv的关系
node.js
竹林81814 小时前
用 wagmi v2 和 viem 手写 NFT 市场批量上架功能,我踩遍了所有异步坑
javascript
zithern_juejin14 小时前
数组扁平化
javascript