• options {Object}
      • message {string} 如果提供,则将错误消息设置为此值。
      • actual {any} 错误实例上的 actual 属性将包含此值。
      • expected {any} 错误实例上的 expected 属性将包含此值。
      • operator {string} 错误实例上的 operator 属性将包含此值。
      • stackStartFn {Function} 如果提供,则生成的堆栈跟踪将移除所有帧直到提供的函数。

    Error 的子类,表明断言的失败。

    所有实例都包含内置的 Error 属性(messagename)以及:

    • actual {any} 设置方法的 actual 参数,例如 [assert.strictEqual()]。
    • expected {any} 设置方法的 expected 参数,例如 [assert.strictEqual()]。
    • generatedMessage {boolean} 表明消息是否是自动生成的。
    • code {string} 始终设置为字符串 ERR_ASSERTION 以表明错误实际上是断言错误。
    • operator {string} 设置为传入的运算符值。
    1. const assert = require('assert');
    2. // 生成 AssertionError 以便稍后比较错误的消息:
    3. const { message } = new assert.AssertionError({
    4. actual: 1,
    5. expected: 2,
    6. operator: 'strictEqual'
    7. });
    8. // 验证错误的输出:
    9. try {
    10. assert.strictEqual(1, 2);
    11. } catch (err) {
    12. assert(err instanceof assert.AssertionError);
    13. assert.strictEqual(err.message, message);
    14. assert.strictEqual(err.name, 'AssertionError');
    15. assert.strictEqual(err.actual, 1);
    16. assert.strictEqual(err.expected, 2);
    17. assert.strictEqual(err.code, 'ERR_ASSERTION');
    18. assert.strictEqual(err.operator, 'strictEqual');
    19. assert.strictEqual(err.generatedMessage, true);
    20. }