Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

Node.js의 assert.fail() 함수

<시간/>

assert 모듈은 기능 주장에 사용되는 다양한 기능을 제공합니다. Assert.fail()은 아무 것도 확인하지 않고 어설션 오류를 발생시킵니다. 생성된 오류는 기본 메시지이거나 함수에 전달된 메시지입니다.

구문

assert.fail(message)

매개변수

위의 매개변수는 다음과 같이 설명됩니다 -

  • 메시지 – 이것은 선택적 매개변수입니다. 함수 실행 시 출력되는 사용자 정의 메시지입니다.

Assert 모듈 설치

npm install assert

assert 모듈은 내장된 Node.js 모듈이므로 이 단계도 건너뛸 수 있습니다. 최신 assert 모듈을 얻으려면 다음 명령을 사용하여 assert 버전을 확인할 수 있습니다.

npm version assert

함수에서 모듈 가져오기

const assert = require("assert").strict;

예시

이름이 assertFail.js인 파일을 만들고 아래 코드 조각을 복사합니다. 파일을 생성한 후 아래 명령을 사용하여 이 코드를 실행하십시오.

node assertFail.js

assertFail.js

// Requiring the module
const assert = require('assert').strict;

// Function call
try {
   assert.fail("Error Occured");
} catch(error) {
   console.log("Error:", error)
}

출력

C:\home\node>> node assertFail.js
Error: { AssertionError [ERR_ASSERTION]: Error Occured
      at Object. (/home/node/mysql-test/assert.js:6:9)
      at Module._compile (internal/modules/cjs/loader.js:778:30)
      at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
      at Module.load (internal/modules/cjs/loader.js:653:32)
      at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
      at Function.Module._load (internal/modules/cjs/loader.js:585:3)
      at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)
      at startup (internal/bootstrap/node.js:283:19)
      at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)
   generatedMessage: false,
   name: 'AssertionError [ERR_ASSERTION]',
   code: 'ERR_ASSERTION',
   actual: undefined,
   expected: undefined,
   operator: 'fail' }

예시

예를 하나 더 살펴보겠습니다.

// Requiring the module
const assert = require('assert').strict;

// Function call
try {
   assert.fail(new TypeError("Custom Defined Error: Not Supported"));
} catch(error) {
   console.log("Error:", error)
}

출력

C:\home\node>> node assertFail.js
Error: TypeError: Custom Defined Error: Not Supported
   at Object. (/home/node/mysql-test/assert.js:6:14)
   at Module._compile (internal/modules/cjs/loader.js:778:30)
   at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
   at Module.load (internal/modules/cjs/loader.js:653:32)
   at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
   at Function.Module._load (internal/modules/cjs/loader.js:585:3)
   at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)
   at startup (internal/bootstrap/node.js:283:19)
   at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)

위의 예에서 사용자 지정 오류인 Type Error를 전달했음을 알 수 있습니다. Assertion Error 대신 오류의 인스턴스가 전달되면 사용자 지정 오류가 전달됩니다.