मॉड्यूल पाठ (4/4)
रूपांतरण टाइप करें
हर समय आपको किसी मान के प्रकार को बदलने की आवश्यकता होती है: value
एक HTML इनपुट एक स्ट्रिंग के रूप में आता है, भले ही वह एक संख्या, एक एपीआई का प्रतिनिधित्व करता हो
स्ट्रिंग को फ़ॉर्मेट में लौटाता है, आपको किसी ऑब्जेक्ट को टेक्स्ट के रूप में लॉग करना होगा। जेएस ऑफर करता है
रूपांतरणों के तीन परिवार: स्पष्ट, समर्पित पार्सर, और (होना)।
टाला गया) अंतर्निहित।
स्पष्ट रूपांतरण
ये सबसे स्पष्ट हैं और आपका डिफ़ॉल्ट होना चाहिए:
Number('42'); // 42
Number('3.14'); // 3.14
Number(''); // 0 ← careful
Number(' 10 '); // 10 (spaces are ignored)
Number('ciao'); // NaN ← does not represent a number
String(42); // '42'
String(true); // 'true'
String(null); // 'null'
String(undefined); // 'undefined'
Boolean(1); // true
Boolean(0); // false
Boolean(''); // false
Boolean('abc'); // trueparseInt और parseFloat: सहिष्णु पार्सर
Number(...), parseInt और parseFloat के विपरीत गैर-संख्यात्मक को अनदेखा करें
स्ट्रिंग की पूँछ: वे पहले अमान्य वर्ण पर रुकते हैं।
Number('42px'); // NaN
parseInt('42px'); // 42
parseFloat('3.14em'); // 3.14
parseInt(' 12 anni'); // 12
parseInt('ciao12'); // NaN ← must start with digitsसंख्याओं को स्ट्रिंग के रूप में प्रारूपित करने के लिए toFixed
पिछले पाठ में संक्षेप में देखा गया: एन दशमलव तक पूर्णांक और रिटर्न ए स्ट्रिंग.
(3.14159).toFixed(2); // '3.14'
(1).toFixed(2); // '1.00'इसे वापस number में बदलने के लिए Number(...) उपसर्ग या यूनरी का उपयोग करें
+:
Number((3.14159).toFixed(2)); // 3.14
+(3.14159).toFixed(2); // 3.14NaN: वह मान जो काटता है
NaN ("कोई संख्या नहीं") संख्यात्मक परिचालनों द्वारा निर्मित होता है जो विफल हो जाते हैं:
Number('ciao'); // NaN
0 / 0; // NaN
parseInt('xxx'); // NaNविशेषताएँ:
- इसका प्रकार
'number'है (हां, "गैर-संख्या" एक संख्या है) - यह स्वयं के बराबर नहीं है:
NaN === NaNfalseहै - इसका परीक्षण करने के लिए फ़ंक्शन का उपयोग करें
Number.isNaN(x)
const x = Number('ciao');
x === NaN; // false (!)
Number.isNaN(x); // trueइसे अजमाएं
स्ट्रिंग '128.95 EUR' को देखते हुए, (दशमलव) संख्या निकालें और इसे निकटतम पूर्णांक तक गोल करें, इसे एक संख्या के रूप में लौटाएं। अपेक्षित: 129.
संकेत दिखाएँ
पार्सफ़्लोट 'EUR' को अनदेखा करता है; .toFixed(0) एक स्ट्रिंग के रूप में पूर्णांक तक चक्कर लगाता है; Number(...) वापस एक संख्या में परिवर्तित हो जाता है।
3 प्रयासों के बाद समाधान उपलब्ध है
व्यायाम की समीक्षा करें
`n = Number('non un numero')` दिया गया है, एक एकल अभिव्यक्ति लिखें जो परिणाम NaN होने पर सत्य का मूल्यांकन करता है।
संकेत दिखाएँ
Number.isNaN का उपयोग करें, n === NaN का नहीं: NaN स्वयं के बराबर नहीं है।
3 प्रयासों के बाद समाधान उपलब्ध है