Mô tả
Module assert cung cấp nhiều chức năng khác nhau dùng cho khẳng định hàm. assert.strictEqual dùng để kiểm tra sự bằng nhau giữa hai đối tượng hoặc tham số. Nó sẽ ném lỗi khẳng định nếu cả hai đối tượng không bằng nhau.
Cú pháp
assert.strictEqual(actual, expected[, message])
Tham số
actual – Giá trị thực tế sẽ được đánh giá đối với tham số kỳ vọng.
expected – Giá trị tham số kỳ vọng được so khớp với giá trị thực tế.
message – Tham số chứa chuỗi thông báo được in nếu actual và expected không khớp. Là trường tùy chọn.
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");Ví dụ
Tạo file tên assertStrictEqual.js và sao chép đoạn mã dưới. Sau khi tạo file, dùng lệnh sau để chạy:
node assertStrictEqual.js
assertStrictEqual.js
// Importing the module const assert = require('assert').strict; var a = "TutorialsPoint"; var b = "TutorialsPoint"; try { // Calling the equal function to check equality assert.strictEqual(a, b); console.log("Actual and expected parameters are equal"); } catch(error) { console.log("Error: ", error); }Đầu ra
C:\home\node>> node assertStrictEqual.js Actual and expected parameters are equal
Trong ví dụ trên, cả hai giá trị bằng nhau hoàn toàn (strictly equal).
Ví dụ khác
Xem thêm một ví dụ nữa.
// Importing the module const assert = require('assert').strict; var a = "Welcome to TutorialsPoint"; var b = "TutorialsPoint"; try { // Calling the equal function to check equality assert.strictEqual(a, b); console.log("Actual and expected parameters are equal"); } catch(error) { console.log("Error: ", error); }Đầu ra
C:\home\node>> node assertStrictEqual.js Error: { AssertionError [ERR_ASSERTION]: Input A expected to strictly equal input B: + expected - actual - 'Welcome to TutorialsPoint' + 'TutorialsPoint' at Object. (/home/node/test/assert.js:9: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: true, name: 'AssertionError [ERR_ASSERTION]', code: 'ERR_ASSERTION', actual: 'Welcome to TutorialsPoint', expected: 'TutorialsPoint', operator: 'strictEqual' }Trong ví dụ trên, ta thấy cả hai giá trị không bằng nhau. Do đó lỗi khẳng định được ném ra bởi phương thức assert.strictEqual().