2010-06-16 19 views
6

क्या स्ट्रिंग का परीक्षण करने का कोई तरीका है, जैसे नीचे दिया गया यह देखने के लिए कि यह वास्तविक संख्या मान है या नहीं?क्या स्ट्रिंग वैरिएबल एक संख्या मान है या नहीं, यह जांचने के लिए कोई फ़ंक्शन है?

var theStr:String = '05'; 

मैं ऊपर स्ट्रिंग मान और इस जैसे एक के बीच फ़र्क करना:

var theStr2:String = 'asdfl'; 

धन्यवाद!

उत्तर

13

हाँ isNaN फ़ंक्शन का उपयोग परीक्षण करने के लिए अगर यह String एक वैध Number है:

var n:Number=Number(theStr); 
if (isNaN(n)){ 
trace("not a number"); 
} else { 
trace("number="+n); 
} 
+0

आश्चर्यचकित किसी ने इसे अब तक नहीं देखा है लेकिन वैल var होना चाहिए। मुझे केवल एक वर्ण =/ – Rjs37

+0

अच्छी जगह नहीं बदलेगा;) बहुत अधिक स्केल मुझे लगता है – Patrick

0

तुम सिर्फ इस प्रकार आप मैच समारोह इस्तेमाल कर सकते हैं पूर्णांकों की जाँच में रुचि रखते हैं, संख्या के लिए रेगुलर एक्सप्रेशन से अधिक जटिल है और आप संभवतः कास्टिंग विधि पैट्रिक के बाद बेहतर होगा।

if (s.match(/^\d+$/)){//do something} 

बेशक यदि आपको इसे किसी भी तरह से डालने की आवश्यकता होगी तो isNaN का उपयोग सही समझ में आता है। बस सोचा कि अगर आप इसे डालने वाले नहीं थे तो मैं एक विकल्प पेश करूंगा।

यह कोड सही होगा यदि एस में केवल अंक हैं (कोई स्थान, दशमलव, अक्षर इत्यादि ...) और कम से कम 1 अंक होना आवश्यक है।

2

NaN प्राप्त करने के लिए आपको Number पर डालना होगा। यदि आप int अक्षरों का उपयोग 0 पर डाले जा सकते हैं।

संबंधित मुद्दे

 संबंधित मुद्दे