TypeScript में स्ट्रिंग को संख्या में कैसे बदलें: शीर्ष त्रुटियाँ और उनसे कैसे बचें

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

परिचय: एक सरल कार्य कोड को क्यों तोड़ देता है

\n\n

TypeScript के साथ काम करने वाला हर डेवलपर कभी न कभी इस कार्य का सामना करता है: "स्ट्रिंग को संख्या में कैसे बदलें?" ऐसा लगता है, इससे आसान क्या हो सकता है? लेकिन यह प्रतीत होने वाली सामान्य प्रक्रिया दर्जनों बगों का स्रोत बन जाती है, खासकर फ्रंटएंड और बैकएंड के बीच, जहाँ डेटा इनपुट फॉर्म, API या CSV पार्सिंग से आता है।

\n\n

Stack Overflow पर प्रश्न "How to convert a string to number in TypeScript?" ने दसियों हज़ार बार देखा गया है। और यह कोई संयोग नहीं है। डेवलपर्स बारीकियों में उलझ जाते हैं: NaN, parseInt बनाम Number(), सटीकता का नुकसान और खाली स्ट्रिंग के साथ अप्रत्याशित व्यवहार। इस लेख में हम TypeScript में स्ट्रिंग को संख्या में बदलने में होने वाली शीर्ष त्रुटियों का विश्लेषण करेंगे और दिखाएंगे कि उनसे कैसे बचा जाए। आप जानेंगे कि किसी विशिष्ट कार्य के लिए कौन सी विधि चुननी है और वास्तव में विश्वसनीय कोड कैसे लिखना है।

\n\n

TypeScript में स्ट्रिंग को संख्या में बदलने के मुख्य तरीके

\n\n

त्रुटियों के बारे में बात करने से पहले, आइए उन उपकरणों को याद करें जो TypeScript डेवलपर के शस्त्रागार में हैं। उनमें से प्रत्येक अलग तरह से व्यवहार करता है, और गलत विधि चुनना पहली और सबसे बड़ी गलती है।

\n\n

1. फ़ंक्शन Number()

\n

सबसे स्पष्ट तरीका। Number(value) दिए गए मान को संख्या में बदलने का प्रयास करता है। यदि यह संभव नहीं है, तो NaN लौटाता है।

\n\n
const str: string = "42";\nconst num: number = Number(str);\nconsole.log(num); // 42\n\nconst invalid: string = "hello";\nconst badNum: number = Number(invalid);\nconsole.log(badNum); // NaN
\n\n

2. यूनरी प्लस (+)

\n

छोटा सिंटैक्स, जो Number() के समान ही काम करता है। संक्षिप्त है, लेकिन शुरुआती लोगों को भ्रमित कर सकता है।

\n\n
const price: string = "99.99";\nconst numericPrice: number = +price;\nconsole.log(numericPrice); // 99.99\n\nconst empty: string = "";\nconst zero: number = +empty;\nconsole.log(zero); // 0 — ध्यान दें, यह एक सामान्य जाल है!
\n\n

3. parseInt() और parseFloat()

\n

पूर्णांक और दशमलव संख्याओं को पार्स करने के लिए विशेष फ़ंक्शन। ये स्ट्रिंग से संख्यात्मक भाग को "काट" लेते हैं, बाद के वर्णों को अनदेखा करते हैं।

\n\n
const userInput: string = "123px";\nconst width: number = parseInt(userInput, 10);\nconsole.log(width); // 123 — 'px' वर्ण हटा दिए गए\n\nconst height: string = "45.67em";\nconst parsedHeight: number = parseFloat(height);\nconsole.log(parsedHeight); // 45.67
\n\n

4. बिटवाइज़ ऑपरेटर (~~, | 0)

\n

एक विदेशी तरीका जो JavaScript से आया है। केवल पूर्णांकों के लिए काम करता है और दशमलव भाग को हटा देता है।

\n\n
const str: string = "7.8";\nconst result: number = ~~str;\nconsole.log(result); // 7 — दशमलव भाग खो गया
\n\n

TypeScript में स्ट्रिंग को संख्या में बदलने में शीर्ष-5 त्रुटियाँ

\n\n

अब जब हमने उपकरणों को समझ लिया है, तो आइए देखें कि डेवलपर सबसे अधिक बार कहाँ गलतियाँ करते हैं। ये त्रुटियाँ असली "रेक" हैं, जिन पर अनुभवी प्रोग्रामर भी कदम रखते हैं।

\n\n

त्रुटि #1: NaN को अनदेखा करना

\n

सबसे आम गलती — परिणाम को NaN के लिए जाँचना नहीं है। TypeScript कोई त्रुटि नहीं देगा यदि आप अंकगणितीय संक्रियाओं या तुलनाओं में NaN का उपयोग करते हैं, लेकिन परिणाम अप्रत्याशित होगा।

\n\n
const input: string = "not a number";\nconst value: number = Number(input);\n\n// त्रुटि: NaN गणनाओं में भाग लेता है\nconst total = value + 10;\nconsole.log(total); // NaN\n\n// NaN के साथ तुलना हमेशा गलत होती है\nif (value === NaN) {\n  console.log("यह कभी काम नहीं करेगा");\n}
\n\n

कैसे बचें: जाँच के लिए हमेशा isNaN() या Number.isNaN() का उपयोग करें। दूसरा विकल्प बेहतर है, क्योंकि यह गैर-संख्यात्मक प्रकारों को परिवर्तित नहीं करता है।

\n\n
if (Number.isNaN(value)) {\n  console.error("संख्या दर्ज नहीं की गई");\n  // डिफ़ॉल्ट मान लौटाया जा सकता है या त्रुटि दिखाई जा सकती है\n

ब्लॉग

पुस्तक अनुशंसाएँ