斷言actual
和expected
相等,用==
判斷否則丟擲錯誤資訊,assertionerror:message
,只測試可列舉物件,不測試原型物件。
由於const obj1 = };
const obj2 = };
const obj3 = };
const obj4 = object.create(obj1);
assert.deepequal(obj1,obj1);//自身相等
assert.deepequal(obj1,obj3);//值相等
assert.deepequal(obj1,obj4,["obj1 don't equal to obj4"]);//丟擲assertionerror: obj1 don't equal to obj4,因為obj4的屬性在原型上
assert.deepequal(obj1,obj2,["obj1 don't equal to obj2"]);//丟擲assertionerror: obj1 don't equal to obj2,若這裡的message為undefined,則assert.deepequal(obj1,obj2)丟擲assertionerror: } deepequal }
deepequal
測試可列舉屬性,且原始值用==
判斷,因此,判斷物件相等時也是列舉其屬性到原始值再進行比較,而equal
則直接用==
比較物件。
assert.equal(, );//不通過,assertionerror [err_assertion]: ==
與之相反的方法assert.notdeepequal();
用===
判斷物件屬性,比較原型。
assert.deepequal(,);//通過,2==『2』
assert.deepstrictequal(,);//不通過2!==『2』
assert.deepstrictequal(,);//通過,列舉屬性比較
const date = new date();
const object = {};
const fakedate = {};
object.setprototypeof(fakedate, date.prototype);
assert.deepstrictequal(object, fakedate);//不通過,原型不相等 丟擲 assertionerror: {} deepstrictequal date {}
assert.deepequal(object, fakedate);//通過,不測試型別標籤
assert.deepequal(date, fakedate);//通過,不測試型別標籤
assert.deepstrictequal(date, fakedate);//通過,可理解為列舉空屬性,所以相等,前面兩個通過的斷言也可這樣理解。
而前面的assert.strictequal(actual,expected,[,message]);
assert.notstrictequal(actual,expected,[,message]);
assert.deepstrict(actual,expected,[,message]);
assert.notdeepstrict(actual,expected,[,message]);
deepstrictequal()
方法在判斷時將列舉屬性。
assert.equal(actual,expected,[,message]);
assert.notequal(actual,expected,[,message]);
assert.ok(value,[,message])//判斷value是否是真值
assert.iferror(value)//若value為真值,則丟擲value
node基礎學習 assert斷言
assert模組是node的內建模組,主要用於斷言。如果表示式不符合預期,就丟擲乙個錯誤。該模組提供11個方法,但只有少數幾個是常用的。assert assert方法接受兩個引數,當第乙個引數對應的布林值為true時,不會有任何提示,返回undefined。當第乙個引數對應的布林值為false時,會...
node函式 node路由
js中乙個函式可以作為另乙個函式的引數,即先定義乙個函式,然後傳遞 這個學過,過 要為路由提供請求的url,和其他需要的get的post請求。隨後,路由會根據需要進行執行響應的 因此,需要根據http請求,從中提取中需要的url和get和post引數 這個url中 url.parse string ...
Python assert 斷言函式
使用assert斷言是學習python乙個非常好的習慣,python assert 斷言句語格式及用法很簡單。在沒完善乙個程式之前,我們不知道程式在 會出錯,與其讓它在執行最崩潰,不如在出現錯誤條件時就崩潰,這時候就需要assert斷言的幫助。本文主要是講assert斷言的基礎知識。python a...