โมดูลยืนยันมีฟังก์ชันต่างๆ มากมายที่ใช้สำหรับการยืนยันฟังก์ชัน assert.notDeepStrictEqual ทดสอบว่าวัตถุทั้งสองไม่ควรเข้มงวดเท่ากัน เกิดข้อผิดพลาดในการยืนยันหากวัตถุทั้งสองมีค่าเท่ากันอย่างเคร่งครัด
ไวยากรณ์
assert.notDeepStrictEqual(actual, expected, [message])
พารามิเตอร์
พารามิเตอร์ข้างต้นอธิบายไว้ด้านล่าง −
-
ของจริง – พารามิเตอร์นี้มีค่าจริงที่ต้องเปรียบเทียบ
-
คาดว่า – พารามิเตอร์นี้จะเก็บค่าที่คาดหวังไว้เพื่อประเมินอีกครั้งกับพารามิเตอร์จริง
-
ข้อความ – นี่เป็นพารามิเตอร์เสริม นี่คือข้อความที่ผู้ใช้กำหนดเมื่อเรียกใช้ฟังก์ชัน
การติดตั้งโมดูลยืนยัน
npm install assert
โมดูลยืนยันเป็นโมดูล inbuilt Node.js ดังนั้นคุณสามารถข้ามขั้นตอนนี้ได้เช่นกัน คุณสามารถตรวจสอบเวอร์ชันยืนยันได้โดยใช้คำสั่งต่อไปนี้เพื่อรับโมดูลการยืนยันล่าสุด
npm version assert
การนำเข้าโมดูลในฟังก์ชันของคุณ
const assert = require("assert").strict; ตัวอย่าง
สร้างไฟล์ที่มีชื่อ – notDeepStrictEqual.js และคัดลอกข้อมูลโค้ดด้านล่าง หลังจากสร้างไฟล์แล้ว ให้ใช้คำสั่งด้านล่างเพื่อรันโค้ดนี้
node notDeepStrictEqual.js
notDeepStrictEqual.js
// Importing the module
const assert = require('assert').strict;
try {
// Checking if actual and expected parameters are equal
assert.notDeepStrictEqual({ a: '21' }, { a: '24' });
console.log("Objects are not equal")
} catch(error) {
console.log("Error: ", error)
} ผลลัพธ์
C:\home\node>> node notDeepStrictEqual.js Objects are not equal
ตัวอย่าง
ลองดูอีกตัวอย่างหนึ่ง
// Importing the module
const assert = require('assert').strict;
try {
// Checking if actual and expected parameters are equal
assert.notDeepStrictEqual({ a: '21' }, { a: '21' });
console.log("Objects are not equal")
} catch(error) {
console.log("Error: ", error)
} ผลลัพธ์
C:\home\node>> node notDeepStrictEqual.js
Error: { AssertionError [ERR_ASSERTION]: Identical input passed to
notDeepStrictEqual:
{
a: '21'
}
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: { a: '21' },
expected: { a: '21' },
operator: 'notDeepStrictEqual' } เราจะเห็นได้ว่าในตัวอย่างข้างต้น ทั้งสองค่าคือ 21 และประเภทสตริง