Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Javascript

Node.js में assert.notDeepEqual () फ़ंक्शन

<घंटा/>

मुखर मॉड्यूल विभिन्न कार्यात्मकताओं का एक समूह प्रदान करता है जो फ़ंक्शन अभिकथन के लिए उपयोग किए जाते हैं। Assert.notDeepEqual() वास्तविक और अपेक्षित मापदंडों के बीच असमानता की जाँच करता है। साथ ही पैरामीटर गहरे बराबर नहीं होने चाहिए। शर्त पूरी नहीं होने पर त्रुटि हो जाएगी।

सिंटैक्स

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

पैरामीटर

उपरोक्त पैरामीटर नीचे वर्णित हैं -

  • वास्तविक - यह पैरामीटर वास्तविक मान रखेगा जिसकी तुलना करने की आवश्यकता है।

  • अपेक्षित - यह अपेक्षित पैरामीटर मान रखेगा जिसके साथ जाँच करने की आवश्यकता है।

  • संदेश - यह एक वैकल्पिक मानदण्ड है। यह एक उपयोगकर्ता परिभाषित संदेश है जब फ़ंक्शन निष्पादित होता है और कोई त्रुटि होती है।

अभिकथन मॉड्यूल स्थापित करना

npm install assert

मुखर मॉड्यूल एक अंतर्निहित Node.js मॉड्यूल है, इसलिए आप इस चरण को भी छोड़ सकते हैं। नवीनतम मुखर मॉड्यूल प्राप्त करने के लिए आप निम्न आदेश का उपयोग करके मुखर संस्करण की जांच कर सकते हैं।

npm version assert

अपने फ़ंक्शन में मॉड्यूल आयात करना

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

उदाहरण

नाम के साथ एक फाइल बनाएं - assertNotDeepEqual.js और नीचे दिए गए कोड स्निपेट को कॉपी करें। फ़ाइल बनाने के बाद इस कोड को चलाने के लिए नीचे दिए गए कमांड का उपयोग करें।

node assertNotDeepEqual.js

assertNotDeepEqual.js

// Importing the module
const assert = require('assert').strict;
try {
   // Both the values should not be identical
   assert.notDeepEqual({ a: '21' }, { a: '21' });
} catch(error) {
   console.log("Error: ", error)
}

आउटपुट

C:\home\node>> node assertNotDeepEqual.js
Error: { AssertionError [ERR_ASSERTION]: Identical input passed to
notDeepStrictEqual:
{
   a: '21'
}
      at Object.<anonymous> (/home/mayankaggarwal/mysql-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' }

उदाहरण

आइए एक और उदाहरण देखें।

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

try {
   // Both the values should not be identical
   assert.notDeepEqual({ a: 21 }, { a: '21' });
   console.log("Values are not identical")
} catch(error) {
   console.log("Error: ", error)
}

आउटपुट

C:\home\node>> node assertNotDeepEqual.js
Values are not identical

हम उपरोक्त उदाहरण में देख सकते हैं कि एक मान प्रकार स्ट्रिंग का है जबकि दूसरा मान पूर्णांक प्रकार का है, इसलिए वे बराबर नहीं हैं।


  1. जावास्क्रिप्ट संख्या समारोह

    जावास्क्रिप्ट नंबर () फ़ंक्शन किसी ऑब्जेक्ट मान को उसके संबंधित संख्यात्मक मान के तर्क के रूप में परिवर्तित करता है। जावास्क्रिप्ट नंबर () फ़ंक्शन के लिए कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta

  1. जावास्क्रिप्ट में फंक्शन प्रोटोटाइप

    जावास्क्रिप्ट में बनाए गए कार्यों में हमेशा जावास्क्रिप्टइंजिन द्वारा जोड़ा गया प्रोटोटाइप गुण होता है। प्रोटोटाइप प्रॉपर्टी एक ऑब्जेक्ट है जिसमें डिफ़ॉल्ट रूप से कंस्ट्रक्टर प्रॉपर्टी होती है। फंक्शन प्रोटोटाइप को − . द्वारा एक्सेस किया जा सकता है functionName.prototype जब फ़ंक्शन कंस्ट्रक्टर का उ

  1. जावास्क्रिप्ट में फंक्शन उधार।

    जावास्क्रिप्ट में विधियों को उधार लेने के लिए कॉल (), लागू () और बाइंड () का उपयोग किया जाता है। जावास्क्रिप्ट में उधार लेने के तरीकों के लिए कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="v