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

जावास्क्रिप्ट टाइप कोएर्सन (प्रकार बलात परिवर्तन) क्या है?


परिचय

टाइप कोएर्सन का अर्थ है एक डेटा टाइप का दूसरे में स्वचालित या निहित रूपांतरण। जावास्क्रिप्ट ऑपरेटर्स (जैसे +, ==, if कंडीशन) के दौरान स्वचालित रूप से टाइप कोएर्सन करता है।

उदाहरण

निम्न कोड जावास्क्रिप्ट टाइप कोएर्सन के लिए है:

<!DOCTYPE html> <html lang="hi"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>टाइप कोएर्सन</title> <style> body { font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; } .result, .sample { font-size: 20px; font-weight: 500; } </style> </head> <body> <h1>जावास्क्रिप्ट टाइप कोएर्सन</h1> <div class="sample">22</div> <div style="color: green;" class="result"></div> <button class="Btn">यहाँ क्लिक करें</button> <h3> उपरोक्त नंबर में 5 जोड़ने के लिए ऊपर दिए गए बटन पर क्लिक करें </h3> <script> const sampleEle = document.querySelector('.sample'); const resEle = document.querySelector(".result"); document.querySelector(".Btn").addEventListener("click", () => { // स्ट्रिंग + नंबर = स्ट्रिंग कन्कैटनेशन (कोएर्सन टू स्ट्रिंग) resEle.innerHTML = ' "22" + 5 = ' + (sampleEle.innerHTML + 5); // अन्य कोएर्सन उदाहरण resEle.innerHTML += '<br>5 - "3" = ' + (5 - '3'); // 2 (नंबर में कोएर्सन) resEle.innerHTML += '<br>5 * "2" = ' + (5 * '2'); // 10 resEle.innerHTML += '<br>true + 1 = ' + (true + 1); // 2 (बूलियन → नंबर) resEle.innerHTML += '<br>null + 1 = ' + (null + 1); // 1 (null → 0) resEle.innerHTML += '<br>undefined + 1 = ' + (undefined + 1); // NaN }); </script> </body> </html>

आउटपुट

उपरोक्त कोड निम्न आउटपुट उत्पन्न करेगा:

जावास्क्रिप्ट टाइप कोएर्सन (प्रकार बलात परिवर्तन) क्या है?

'यहाँ क्लिक करें' बटन पर क्लिक करने पर:

जावास्क्रिप्ट टाइप कोएर्सन (प्रकार बलात परिवर्तन) क्या है?

टाइप कोएर्सन नियम

  • + ऑपरेटर: यदि कोई ऑपरेंड स्ट्रिंग है → स्ट्रिंग कन्कैटनेशन; अन्यथा नंबर जोड़
  • - * / % ऑपरेटर्स: हमेशा नंबर में परिवर्तित
  • == (लूज़ इक्वलिटी): टाइप कोएर्सन करता है (उदाहरण: '5' == 5 true)
  • === (स्ट्रिक्ट इक्वलिटी): कोई कोएर्सन नहीं (उदाहरण: '5' === 5 false)
  • बूलियन कॉन्टेक्स्ट (if, &&, ||, !): Falsy वैल्यूज (false, 0, '', null, undefined, NaN) → false

सर्वोत्तम अभ्यास

  • तुलना के लिए === और !== का उपयोग करें
  • स्पष्ट रूपांतरण के लिए Number(), String(), Boolean() का उपयोग करें
  • कोएर्सन पर निर्भर न रहें - यह सूक्ष्म बग्स का कारण बनता है
  1. - जावास्क्रिप्ट में undefined का बूलियन मान क्या है?

    undefined का बूलियन मान false है। न केवल undefined बल्कि null, false, NaN, खाली स्ट्रिंग का मान भी false है। उदाहरण निम्नलिखित उदाहरण में, undefined, false, NaN और खाली स्ट्रिंग के बूलियन मान प्रदर्शित किए गए थे। यदि हम कोड की पहली 3 पंक्तियों को देखें तो सरणी में एक होल बनाया गया है। चूंकि एक होल

  1. - JavaScript में टाइप कन्वर्जन में '+' ऑपरेटर का महत्व

    '+' ऑपरेटर के कई उपयोग हैं जिनमें जोड़, संयोजन, और सबसे महत्वपूर्ण टाइप कन्वर्जन शामिल है। आमतौर पर, हम जोड़ के लिए '+' ऑपरेटर का उपयोग करते हैं और कभी-कभी संयोजन के लिए। इसका टाइप कन्वर्जन में भी बहुत उपयोग है। स्ट्रिंग को नंबर में बदलना बहुत आसान है। उदाहरण <html> <body&g

  1. - JavaScript: % ऑपरेटर स्ट्रिंग पर क्यों काम करता है? - (टाइप कोएरशन)

    मान लीजिए हमारे पास एक कोड स्निपेट है जो कुछ चौंकाने वाले परिणाम देता है। पहली बात, हम देखते हैं कि मॉड्यूलो ऑपरेटर स्ट्रिंग के साथ भी ठीक काम करता है (आश्चर्यजनक रूप से)। दूसरी बात, दो स्ट्रिंग्स का कन्कैटिनेशन अजीब परिणाम देता है। हमें यह समझाना है कि JavaScript ऐसा क्यों करता है? यहां समस्या कोड