📜  Node.js assert.deepStrictEqual()函数(1)

📅  最后修改于: 2023-12-03 15:17:53.883000             🧑  作者: Mango

Node.js assert.deepStrictEqual()函数

简介

在 Node.js 中,assert.deepStrictEqual()函数是断言模块中的一个函数,它的作用是使用深度比较来测试实际值是否深度相等于期望值。

与assert.strictEqual()函数一样,assert.deepStrictEqual()函数也是被视为 "断言库" 中的一个函数,用于断言一个结果能否被期望的结果匹配,并在两值不相等时抛出一个错误。

语法
assert.deepStrictEqual(actual, expected[, message])

参数说明:

  • actual:实际值。
  • expected:期望值。
  • message:一个可选的字符串,表示当断言失败时输出的错误信息。
示例

以下示例演示了如何使用assert.deepStrictEqual()函数来正确断言两个数组是否相对应。

const assert = require('assert');

const arr1 = [1, 2, 3];
const arr2 = [1, 2, 3];

assert.deepStrictEqual(arr1, arr2);

输出结果:

undefined

注意:如果断言失败,assert.deepStrictEqual()函数将会抛出一个 AssertionError,并在给定的 message 参数中输出一个错误信息。

比较操作符

assert.deepStrictEqual()函数使用引用比较(即用 Object.is())来比较原语类型值和非实例化对象(比如数字和字符串)。但是,对于实例化对象来说,如果期望值和实际值都是同一类的实例化对象,则使用 operator(比较运算符)来比较。如果它们不是同一类实例化对象,则如果运算符的值为 true,则抛出具有 message 属性的 AssertionError。