国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

學(xué)習(xí)node.js 斷言的使用詳解

2024-05-06 15:41:36
字體:
供稿:網(wǎng)友

assert模塊提供了一組簡(jiǎn)單的斷言測(cè)試,分嚴(yán)格模式(strict)和遺留模式(legacy),嚴(yán)格模式下,對(duì)比的方式比較嚴(yán)格,比如說,0與'0'比較,會(huì)報(bào)錯(cuò),但在遺留模式下是可以通過的。官方推薦使用嚴(yán)格模式, 所以本文基于strict模式下學(xué)習(xí)。

如何使用嚴(yán)格模式

const assert = require('assert').strict; // 嚴(yán)格模式assert.equal(0, '0') // error

全局使用strict模式后,assert.equal() 與assert.strictEqual()的效果是一樣的。

如果不想全局使用的話,可以直接使用帶strict的方法。

const assert = require('assert') // 遺留模式assert.equal(0, '0') // successassert.strictEqual(0, '0') // error

assert.AssertionError

Error的子類,表示斷言失敗,assert模塊拋出的錯(cuò)誤都是AssertionError的實(shí)例。

類似于下面這個(gè)class,實(shí)際上的AssertionError是由ES5寫的,下面這個(gè)只是方便理解傳入的參數(shù)

interface IOptions { message?: string; // 設(shè)置錯(cuò)誤的信息 actual?: any; // 設(shè)置錯(cuò)誤實(shí)例上的實(shí)際值 expected?: any; // 設(shè)置錯(cuò)誤實(shí)例上的期望值 operator?: string; // 設(shè)置用于比較的操作或觸發(fā)錯(cuò)誤的斷言函數(shù) stackStartFn(): any; // 生成的堆棧跟蹤將移除所有幀直到提供的函數(shù)}class AssertionError extends Error { constructor(options: IOptions) {  // ... }}

assert(value: any, message?: string | Error)

檢測(cè)是否為真值,是assert.ok的別名。

assert.ok(value: any, message?: string | Error)

檢測(cè)value是否為真值。

如果不為真值,拋出屬性message為message參數(shù)值的AssertionError,如果未定義,為默認(rèn)錯(cuò)誤信息。

如果是Error的實(shí)例,則拋出Error實(shí)例。(以下關(guān)于message的使用都一樣)

assert.strictEqual(actual: any, expected: any, message?: string | Error)

檢測(cè) actual參數(shù)和expected參數(shù)之間的嚴(yán)格相等性,使用sameValue比較。

assert.deepStrictEqual(actual: any, expected: any, message?: string | Error)

檢測(cè)actual參數(shù)和expected參數(shù)之間的深度嚴(yán)格相等性,深度比較意味著子對(duì)象的可枚舉的自身屬性也通過以下規(guī)則進(jìn)行遞歸計(jì)算。

assert.notStrictEqual(actual: any, expected: any, message?: string | Error)

檢測(cè) actual參數(shù)和expected參數(shù)之間的嚴(yán)格不相等性,使用sameValue比較。

assert.notDeepStrictEqual(actual: any, expected: any, message?: string | Error)

檢測(cè)actual參數(shù)和expected參數(shù)之間的深度嚴(yán)格不相等性,深度比較意味著子對(duì)象的可枚舉的自身屬性也通過以下規(guī)則進(jìn)行遞歸計(jì)算。

assert.fail(message?: string | Error = 'failed')

使用提供的錯(cuò)誤消息或默認(rèn)錯(cuò)誤消息拋出 AssertionError。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 北川| 昂仁县| 喀喇| 绵竹市| 乌苏市| 老河口市| 米林县| 凉城县| 汉沽区| 太谷县| 关岭| 巴南区| 平山县| 建德市| 昌平区| 景德镇市| 铜梁县| 岚皋县| 筠连县| 兴安县| 卓资县| 北辰区| 柳州市| 嘉善县| 新闻| 沐川县| 大理市| 苏州市| 兴文县| 电白县| 栾川县| 汝州市| 玉龙| 梧州市| 萨嘎县| 都昌县| 万载县| 许昌市| 吉木萨尔县| 江西省| 无锡市|