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

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


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

ไวยากรณ์

assert.ok(value, [message])

พารามิเตอร์

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

  • คุณค่า – พารามิเตอร์นี้ใช้ค่าเป็นอินพุตซึ่งจะถูกตรวจสอบโดยฟังก์ชันยืนยัน ok()

  • ข้อความ – นี่เป็นพารามิเตอร์เสริม นี่คือข้อความที่ผู้ใช้กำหนดเมื่อเรียกใช้ฟังก์ชัน

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

npm install assert

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

npm version assert

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

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

ตัวอย่าง

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

node assertOk.js

ยืนยันOK.js

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

try {
   //Checking the type of value
   assert.ok(typeof 21 === 'number');
   console.log("NO ERROR!")
} catch(error) {
   console.log("Error: ", error)
}

ผลลัพธ์

C:\home\node>> node assertOk.js
NO ERROR!

ตัวอย่าง

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

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

try {
   //Checking the type of value
   assert.ok(typeof 21 === 'string');
   console.log("NO ERROR!")
} catch(error) {
   console.log("Error: ", error)
}

ผลลัพธ์

C:\home\node>> node assertOk.js
Error: { AssertionError [ERR_ASSERTION]: The expression evaluated to a falsy
value:
   assert.ok(typeof 21 === 'string')
      at Object. (/home/node/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: true,
   name: 'AssertionError [ERR_ASSERTION]',
   code: 'ERR_ASSERTION',
   actual: false,
   expected: true,
   operator: '==' }