पाठ 6 / 40

टाइप कन्वर्शन और कोएर्शन

Types को स्पष्ट रूप से convert करें, automatic coercion के आश्चर्य समझें और strict equality को प्राथमिकता दें।

स्पष्ट कन्वर्शन

जानबूझकर Number(), String(), Boolean() से कन्वर्ट करें।

Number("42");     // 42
String(42);       // "42"
Boolean(0);       // false
Boolean("");      // false
Boolean("0");     // true (non-empty string!)

अप्रत्यक्ष कोएर्शन

JS ऑपरेशन में अपने-आप टाइप बदल देता है — + किसी स्ट्रिंग के साथ concatenation कराता है, पर -, *, / संख्या में बदल देते हैं।

मशहूर गड़बड़ियाँ

कोएर्शन से कुछ मशहूर हैरान करने वाले नतीजे मिलते हैं — इन्हें जान लें ताकि असली कोड में परेशान न करें।

console.log("5" + 3);     // "53"
console.log("5" - 3);     // 2
console.log(1 + true);    // 2
console.log([] + []);     // ""

== बनाम ===

== तुलना से पहले टाइप बदल देता है; === मान और टाइप दोनों जाँचता है। लगभग हमेशा === उपयोग करें।