Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

ฟังก์ชัน assert.strictEqual() ใน Node.js


โมดูลยืนยันมีฟังก์ชันต่างๆ มากมายที่ใช้สำหรับการยืนยันฟังก์ชัน ยืนยัน.strictEqual ใช้เพื่อตรวจสอบความเท่าเทียมกันระหว่างสองวัตถุหรือพารามิเตอร์ จะทำให้เกิดข้อผิดพลาดในการยืนยันหากวัตถุทั้งสองไม่เท่ากัน

ไวยากรณ์

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

พารามิเตอร์

พารามิเตอร์ข้างต้นอธิบายไว้ด้านล่าง −

  • ของจริง – นี่คือค่าจริงที่จะถูกประเมินโดยเทียบกับพารามิเตอร์ที่คาดไว้

  • คาดว่า – นี่คือค่าพารามิเตอร์ที่คาดไว้ซึ่งตรงกับค่าจริง

  • ข้อความ – พารามิเตอร์นี้เก็บค่าข้อความสตริงที่จะพิมพ์หากพารามิเตอร์จริงและพารามิเตอร์ที่คาดไว้ไม่ตรงกัน เป็นช่องที่ไม่บังคับ

การติดตั้งโมดูลยืนยัน

npm install assert

โมดูลยืนยันเป็นโมดูล inbuilt Node.js ดังนั้นคุณสามารถข้ามขั้นตอนนี้ได้เช่นกัน คุณสามารถตรวจสอบเวอร์ชันยืนยันได้โดยใช้คำสั่งต่อไปนี้เพื่อรับโมดูลการยืนยันล่าสุด

npm version assert

การนำเข้าโมดูลในฟังก์ชันของคุณ

const assert = require("assert");

ตัวอย่าง

สร้างไฟล์ที่มีชื่อ – assertStrictEqual.js และคัดลอกข้อมูลโค้ดด้านล่าง หลังจากสร้างไฟล์แล้ว ให้ใช้คำสั่งต่อไปนี้เพื่อเรียกใช้โค้ดนี้

node assertStrictEqual.js

ยืนยันStrictEqual.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)
}

ผลลัพธ์

C:\home\node>> node assertStrictEqual.js
Actual and expected parameters are equal

เราจะเห็นได้จากตัวอย่างข้างต้นว่าค่าทั้งสองมีค่าเท่ากันอย่างเคร่งครัด

ตัวอย่าง

ลองดูอีกตัวอย่างหนึ่ง

// 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)
}

ผลลัพธ์

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' }

ในตัวอย่างข้างต้น เราจะเห็นว่าค่าทั้งสองไม่เท่ากัน ดังนั้น เกิดข้อผิดพลาดในการยืนยันโดยเมธอด assert strictEqual()