當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Node.js assert.doesNotMatch()用法及代碼示例


斷言模塊提供了一組用於驗證不變量的斷言函數。 assert.doesNotMatch()函數期望字符串輸入與正則表達式不匹配。如果條件為真,則不會產生輸出,否則會引發斷言錯誤。

用法:

assert.doesNotMatch(string, regexp[, message])

參數:此函數接受上述和以下所述的三個參數:

  • string:此參數保存需要評估的字符串。
  • regexp此參數保存匹配的正則表達式。
  • message此參數保存字符串或錯誤類型的錯誤消息。這是一個可選參數。

返回值:此函數返回對象類型的斷言錯誤。

斷言模塊的安裝:



  1. 您可以訪問指向安裝斷言模塊的鏈接。您可以使用此命令安裝此軟件包。
    npm install assert

    注意:安裝是可選步驟,因為它是內置的Node.js模塊。

  2. 安裝斷言模塊後,可以使用命令在命令提示符下檢查斷言版本。
    npm version assert
  3. 之後,您可以創建一個文件夾並添加一個文件,例如index.js,如下所示。

範例1: 文件名:index.js

// Requiring the module 
const assert = require('assert').strict; 
  
// Function call 
try { 
    assert.doesNotMatch('I will try to pass', /fail/); 
    console.log("No Error Occured") 
} catch(error) { 
    console.log("Error:", error) 
}

運行程序的步驟:

  1. 項目結構將如下所示:
  2. 使用以下命令運行index.js文件:
    node index.js

    輸出:

    No Error Occured
    

範例2: 文件名:index.js

// Requiring the module 
const assert = require('assert').strict; 
  
// Function call 
try { 
    assert.doesNotMatch('I will try to pass', /pass/); 
    //console.log("No Error Occured") 
} catch(error) { 
    console.log("Error:", error) 
}

運行程序的步驟:

  1. 項目結構將如下所示:
  2. 使用以下命令運行index.js文件:
    node index.js

    輸出:

    Error:AssertionError [ERR_ASSERTION]:The input was expected to not match the 
    regular expression /pass/. Input:
    
    'I will try to pass'
    
        at Object. (C:\Users\Lenovo\Downloads\index.js:6:12)
        at Module._compile (internal/modules/cjs/loader.js:1138:30)
        at Object.Module._extensions..js (internal/modules/cjs/loader.js:1158:10)
        at Module.load (internal/modules/cjs/loader.js:986:32)
        at Function.Module._load (internal/modules/cjs/loader.js:879:14)
        at Function.executeUserEntryPoint [as runMain] 
            (internal/modules/run_main.js:71:12)
        at internal/main/run_main_module.js:17:47 {
      generatedMessage:true,
      code:'ERR_ASSERTION',
      actual:'I will try to pass',
      expected:/pass/,
      operator:'doesNotMatch'
    }
    

參考: https://nodejs.org/dist/latest-v12.x/docs/api/assert.html#assert_assert_doesnotmatch_string_regexp_message




相關用法


注:本文由純淨天空篩選整理自gouravhammad大神的英文原創作品 Node.js assert.doesNotMatch() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。