斷言
單元測試框架的核心是斷言方法,通常叫assert()。
該方法通常接收一個值--需要斷言的值,以及一個表示該斷言目的的描述。
如果該值執(zhí)行的結(jié)果為true,斷言就會通過;
否則,斷言就會被認(rèn)為是失敗的。
通常用一個相應(yīng)的通過(pass)/ 失?。╢ail)標(biāo)記記錄相關(guān)的信息;
function assert(value, desc) {  let li = document.createElement('li');  li.className = value ? 'pass' : 'fail';  li.appendChild(document.createTextNode(desc));  document.getElementById('results').appendChild(li);}// 斷言函數(shù)function assert(value, desc) {  if (value) {    console.log(`/033[32m ${desc} /033[0m`);  // 斷言通過 綠色字體  } else {    console.log(`/033[31m ${desc} /033[0m`);  // 斷言失敗 紅色字體  }}函數(shù)
if (window) {  var x = 123;}alert(x);執(zhí)行代碼后,會彈出123,是因?yàn)镴avaScript在大括號關(guān)閉處并沒有終止其作用域。
作為函數(shù)進(jìn)行調(diào)用
如果一個數(shù)不是作為方法、構(gòu)造器、或者通過apply()或call()進(jìn)行調(diào)用的,則認(rèn)為它是“作為函數(shù)”進(jìn)行調(diào)用的。
function ninja() {};ninja()var samurai = function() {};samurai()  以這種方式調(diào)用時,函數(shù)的上下文是全局上下文---window對象。作為方法進(jìn)行調(diào)用
當(dāng)一個函數(shù)被賦值給對象的一個屬性,并使用引用該函數(shù)的這個屬性進(jìn)行調(diào)用時,那么函數(shù)就是作為該對象的一個方法進(jìn)行調(diào)用的。
新聞熱點(diǎn)
疑難解答
圖片精選