1.assert()
大体理解意思:assert可以抽象理解为node中的alert++
assert模块是Node的内置模块,用于断言的作用,如果不是自己想要的就抛出错误
assert(arg1, arg2)该方法接受两个参数
第一个参数如果为true, 不会提示,返回undefined;如果为false,抛出错误,错误信息就是第二个参数。
2.assert.equal()
equal接受三个参数,第一个是实际值,第二个是预期值,第三个是错误的提示信息
equal内部使用的是相等运算符(==),不是三等号===
3.assert.notEqual()
和equal方法相同,接受三个参数,第一个参数等于第二个参数的时候,抛出错误提示,也就是第三个值
4.assert.deepEqual()
deepEqual方法比较俩对象或者数组(深度比较想等)
只要对象属性一一对应,且值想等,就认为这两个对象想等,否则抛出错误
使用方法:assert.deepEqual(arg1, arg2, message)
第一个参数和第二个参数为比较的对象或者数组,第三个为值不等的时候抛出的错误信息
5.assert.notDeepEqual()
与assert.deepEqual()的使用方法相同,但是表达意思相反,是判断两个数组或者对象不相等,如果想等抛出第三个参数为提示信息
6.assert.strictEqual()
使用严格相等运算符,比较两个表达式,同样传入三个参数,第一个和第二个传入的比较值相等,抛出第三个参数
7.assert.notStrictEqual()
与上面严格相等相反,使用严格不相等运算符(!==)
8.assert.throws()
throws方法预期某个代码块会抛出一个错误,且抛出的错误符合指定的条件
assert.throws(block, error, message)
9.assert.doesNotThrow()
与上面的方法相反,预期某个代码块不抛出错误
两个参数
assert.doesNotThrow(block, message)
10.assert.ifError()
ifErrow方法断言某个表达式是否false,如果该表达式对应的布尔值等于true,就抛出错误。它对于验证回调函数的
第一个参数十份有用,如果改参数是true, 就表示有错误
11.assert.fail()
fail方法用于抛出一个错误