Computer >> Máy Tính >  >> Lập trình >> Javascript

Hàm khẳng định.equal () trong Node.js

Mô-đun khẳng định cung cấp một loạt các chức năng khác nhau được sử dụng để xác nhận chức năng. Hàm Assert.equal () là một trong số đó. Hàm này được sử dụng để kiểm tra sự bình đẳng giữa các tham số thực tế và mong đợi. Lỗi xác nhận sẽ xuất hiện nếu điều kiện không được đáp ứng.

Cú pháp

assert.equal(actual, expected[, message])

Tham số

Các thông số trên được mô tả như bên dưới -

  • thực tế - Đây là giá trị thực tế sẽ được đánh giá dựa trên các thông số mong đợi.

  • dự kiến ​​ - Đây là giá trị tham số mong đợi được so khớp với giá trị thực.

  • tin nhắn - Tham số này giữ giá trị thông báo chuỗi sẽ được in nếu các tham số thực tế và dự kiến ​​không khớp. Đây là một trường tùy chọn.

Cài đặt Mô-đun Assert

npm install assert

Mô-đun khẳng định là một mô-đun Node.js có sẵn, vì vậy bạn cũng có thể bỏ qua bước này. Bạn có thể kiểm tra phiên bản xác nhận bằng cách sử dụng lệnh sau để tải mô-đun xác nhận mới nhất.

npm version assert

Nhập mô-đun trong chức năng của bạn

const assert = require("assert");

Ví dụ

Tạo một tệp với tên - khẳng địnhEqual.js và sao chép đoạn mã bên dưới. Sau khi tạo tệp, hãy sử dụng lệnh dưới đây để chạy mã này.

node assertEqual.js

khẳng địnhEqual.js

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

var a = 21;
var b = 20;

// Function call
try {
   // Checking if both a & b are equal
   assert.equal(a, b);
} catch(error) {
   console.log("Error: ", error)
}

Đầu ra

C:\home\node>> node assertEqual.js
Error: { AssertionError [ERR_ASSERTION]: Input A expected to strictly equal
input B:
+ expected - actual
- 21
+ 20
      at Object.<anonymous> (/home/node/mysql-test/assert.js:10: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: 21,
   expected: 20,
   operator: 'strictEqual' }

Chúng ta có thể thấy trong ví dụ trên rằng cả hai giá trị đều không bằng nhau.

Ví dụ

Hãy xem thêm một ví dụ.

// Importing the module
const assert = require('assert');

var a = 20;
var b = '20';

// Function call
try {
   // Checking if both a & b are equal
   assert.equal(a, b);
   console.log("a and b are equal")
} catch(error) {
   console.log("Error: ", error)
}

Đầu ra

C:\home\node>> node assert.js
a and b are equal

Chúng ta có thể thấy trong ví dụ trên rằng a là một giá trị nguyên, trong khi b là một giá trị chuỗi. Nhưng các nội dung bên trong đều bằng nhau. Do đó, kết quả đầu ra cho chúng ta cả a và b đều bằng nhau.