Avatar ·

जाँच कैसे करें कि JavaScript में कोई स्ट्रिंग वैध संख्या है या नहीं?

सभी को नमस्ते! मैं JavaScript में नौसिखिया हूँ और एक छोटा कैलकुलेटर एप्लिकेशन लिख रहा हूँ। उपयोगकर्ता टेक्स्ट फ़ील्ड में मान दर्ज करता है, और मुझे गणितीय ऑपरेशन करने से पहले यह सुनिश्चित करना होगा कि दर्ज किया गया डेटा संख्याएँ हैं। समस्या यह है कि मैं जाँच करने का कोई विश्वसनीय तरीका नहीं सोच पा रहा हूँ। `typeof` का उपयोग किया — लेकिन यह input से आने वाली हर चीज़ के लिए "string" दिखाता है। `isNaN()` आज़माया — लेकिन यह अजीब व्यवहार करता है: `isNaN("123")` `false` लौटाता है (अच्छा है), लेकिन `isNaN("12.3abc")` भी `false` लौटाता है, जबकि यह स्पष्ट रूप से कोई संख्या नहीं है! और `isNaN("")` `false` लौटाता है, खाली स्ट्रिंग को संख्या माना जाता है — यह बिल्कुल समझ से परे है। `Number(" ")` भी आज़माया — यह 0 लौटाता है, जो भी भ्रमित करने वाला है। `parseFloat` और `parseInt` के बारे में भी सुना, लेकिन वे स्ट्रिंग को काटते हैं और संख्या लौटाते हैं