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

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

विवरण

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

सिंटैक्स

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

पैरामीटर

  • actual - यह वास्तविक मान है जिसका मूल्यांकन अपेक्षित पैरामीटर्स के विरुद्ध किया जाएगा।

  • expected - यह अपेक्षित पैरामीटर मान है जिसका मिलान वास्तविक मान से किया जाता है।

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

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

npm install assert

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

npm version assert

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

const assert = require("assert");

उदाहरण

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

node assertDeepStrict.js

assertDeepStrict.js

// assert मॉड्यूल आयात करें const assert = require('assert').strict; try {   // deep strict फ़ंक्शन को कॉल करें   assert.deepStrictEqual({ a: 3 }, { a: '3' });   console.log("No Error Occured..."); } catch(error) {   console.log("Error: ", error); }

आउटपुट

C:\home\node>> node assertDeepStrict.js Error: { AssertionError [ERR_ASSERTION]: Input A expected to strictly deepequal input B: + expected - actual     {       - a: 3       + a: '3'     }     at Object. (/home/node/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: 3 }, expected: { a: '3' }, operator: 'deepStrictEqual' }

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

उदाहरण

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

// assert मॉड्यूल आयात करें const assert = require('assert').strict; try {   // deep strict फ़ंक्शन को कॉल करें   // दोनों मान स्ट्रिंग हैं   assert.deepStrictEqual({ a: '3' }, { a: '3' });   console.log("No Error Occured..."); } catch(error) {   console.log("Error: ", error); }

आउटपुट

C:\home\node>> node assertDeepStrict.js No Error Occured...
  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