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

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

विवरण

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

सिंटैक्स

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

पैरामीटर

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

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

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

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

npm install assert

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

npm version assert

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

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

उदाहरण

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

node assertNotDeepEqual.js

assertNotDeepEqual.js

// मॉड्यूल आयात करें const assert = require('assert').strict; try {   // दोनों मान समान नहीं होने चाहिए   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. (/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' }

उदाहरण

एक और उदाहरण देखते हैं।

// मॉड्यूल आयात करें const assert = require('assert').strict; try {   // दोनों मान समान नहीं होने चाहिए   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. JavaScript Number() फंक्शन JavaScript Number() फंक्शन

    JavaScript Number() फंक्शन ऑब्जेक्ट वैल्यू को तर्क के रूप में पास करके उसके संबंधित न्यूमेरिक वैल्यू में बदल देता है।उदाहरण<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width,

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

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

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

    call(), apply() और bind() का उपयोग जावास्क्रिप्ट में मेथड्स बॉरो करने के लिए किया जाता है। जावास्क्रिप्ट में मेथड्स बॉरो करने के लिए निम्नलिखित कोड है: उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport&qu