Mô tả
Module assert cung cấp nhiều chức năng khác nhau dùng cho khẳng định hàm. Hàm assert.fail() ném ra một lỗi khẳng định mà không kiểm tra điều kiện gì. Thông báo lỗi sản sinh hoặc là thông báo mặc định hoặc là thông báo được truyền vào hàm.
Cú pháp
assert.fail(message)
Tham số
message – Tham số tùy chọn. Đây là thông báo do người dùng định nghĩa được in khi hàm thực thi.
Cài đặt module Assert
npm install assert
Module assert là module tích hợp sẵn của Node.js, nên bạn có thể bỏ qua bước này. Bạn có thể kiểm tra phiên bản assert bằng lệnh sau để lấy module assert mới nhất.
npm version assert
Import module vào hàm
const assert = require("assert").strict;Ví dụ
Tạo file tên assertFail.js và sao chép đoạn mã dưới. Sau khi tạo file, dùng lệnh sau để chạy:
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); }Đầu ra
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' }Ví dụ khác
Xem thêm một ví dụ nữa.
// 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); }Đầu ra
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)
Trong ví dụ trên, chúng ta đã truyền một lỗi tùy chỉnh – TypeError. Lỗi tùy chỉnh sẽ được truyền nếu một instance của lỗi được truyền thay vì AssertionError.