2012-05-08 11 views
5

NaN, ऑब्जेक्ट या आदिम क्या है?जावास्क्रिप्ट: NaN, ऑब्जेक्ट या आदिम क्या है?

NaN - नहीं एक संख्या

+0

NaN संख्या वर्ग – rsplak

+1

'टाइपऑफ़ NaN == "संख्या" ' –

+1

NaN की एक नल की तरह है। आप इस [अतः पोस्ट] उल्लेख कर सकते हैं [1] [1]: http://stackoverflow.com/questions/559792/what-is-the-reserved-keyword-for-nan -इन-जावास्क्रिप्ट –

उत्तर

4

NaN एक आदिम संख्या मूल्य है। 1, 2, आदि

1

NaN वैश्विक वस्तु की एक संपत्ति है।

NaN का प्रारंभिक मान नॉट-ए-नंबर है - संख्या.NAN के मान के समान। आधुनिक ब्राउज़रों में, NaN एक कॉन्फ़िगर करने योग्य, गैर-लेखन योग्य संपत्ति है। यहां तक ​​कि जब यह मामला नहीं है, तब भी इसे ओवरराइड करने से बचें।

प्रोग्राम में NaN का उपयोग करना दुर्लभ है। यह लौटा हुआ मूल्य है जब मैथ फ़ंक्शन विफल हो जाते हैं (Math.sqrt (-1)) या जब कोई फ़ंक्शन पार्स करने की कोशिश करता है तो एक संख्या विफल होती है (parseInt ("blabla"))।

Reference

8

यह एक आदिम है। आप कई तरीकों से में देख सकते हैं: "। वस्तु"

  • typeof NaN देता है "संख्या," नहीं

  • एक संपत्ति जोड़ें, यह गायब हो जाता है। NaN.foo = "hi"; console.log(NaN.foo) // undefined

  • NaN instanceof Number झूठा देता है (लेकिन हम जानते हैं कि यह एक संख्या है, इसलिए यह एक आदिम होना चाहिए)।

यह वास्तव में कोई मतलब नहीं होता NaN, एक वस्तु होने के लिए क्योंकि 0/0 की तरह भाव NaN में परिणाम की जरूरत है, और गणित संचालन हमेशा पुरातन में परिणाम। किसी ऑब्जेक्ट के रूप में NaN होने का अर्थ यह भी होगा कि यह एक झूठे मूल्य के रूप में कार्य नहीं कर सकता है, जो कुछ मामलों में करता है।

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