2015-06-24 7 views
6

मैंने एक पुस्तक, बच्चों के लिए जावास्क्रिप्ट पढ़ने शुरू कर दिया। इसमें लेखक से कहा गया है कि तीन डेटा प्रकार के होते हैं:जेएस में कितने डेटा प्रकार हैं, और वे क्या हैं?

  • संख्या
  • तार
  • बूलियन्स

हालांकि, W3Schools के अनुसार, वहाँ चार हैं:

  • संख्या
  • तार
  • सरणियों
  • वस्तुओं

मैं जानना चाहता हूँ जो एक सही है चाहता था।

उत्तर

4

आप typeof ऑपरेटर का उपयोग यह परीक्षण कर सकते हैं:

typeof ऑपरेटर आप देता है किसी भी एकल ऑपरेंड से पहले रखे गए डेटा प्रकारों के नाम।

इसलिए, किसी भी संकार्य चर के साथ typeof प्रयोग करके देखें: यह निम्नलिखित डेटाप्रकार नामों में से एक दे देंगे:

  1. स्ट्रिंग
  2. संख्या
  3. बूलियन
  4. वस्तु
  5. अपरिभाषित

इसलिए, ये पांच हैं जावास्क्रिप्ट में डेटा प्रकार।

var val1 = "New World"; //returns String 
var val2 = 5;    //returns Number 
var val3 = true;   //returns Boolean 
var val4 = [1,2,3];  //returns Object 
var val5 = null;   //returns Object (Value is null, but type is still an object) 
var val6;     //returns Undefined 
+0

पढ़ें 'val4' को सरणी नहीं माना जाएगा? – eagercoder

+0

इसका मूल्य प्रकार निश्चित रूप से एक सरणी है, लेकिन चूंकि जावास्क्रिप्ट इसे उपर्युक्त डेटाटाइप में से एक के रूप में वर्गीकृत कर सकता है, यह ऑरे को ऑब्जेक्ट श्रेणी में रखता है। यह इसे एक विशेष वस्तु के रूप में व्यवहार करता है, लेकिन निश्चित रूप से ऑब्जेक्ट के तहत। – svik

+0

@eagercoder नहीं, _type_ एक वस्तु है, _instance_ एक 'ऐरे' है। आप प्रोटोटाइप के बारे में जानेंगे, आखिरकार: सरणी का वास्तव में विशेष तरीके से इलाज नहीं किया जाता है। वे केवल ऑब्जेक्ट हैं जिनके पास 'ऐरे' इंटरफ़ेस है और इस प्रकार 'सॉर्ट', 'मैप',' फ़िल्टर' इत्यादि जैसी विधि का समर्थन करता है। प्रत्येक ऑब्जेक्ट कुछ फ़ंक्शन का उदाहरण है (इस मामले में 'फ़ंक्शन ऐरे() ') इस प्रकार इसे प्रोटोटाइप के रूप में लागू करता है। – Xufox

2

चेक link

  • छह डेटा प्रकार है कि पुरातन हैं निम्नलिखित:

    1.Boolean

    2.Null

    3.Undefined

    4.Number

    ,210

    5.String

    6.Symbol (नए ECMAScript में 6)

  • और वस्तु

+0

प्रतीक्षा ... 'शून्य 'एक प्रकार नहीं है। ऐसा कुछ नहीं है कि 'टाइपोफ' वापस आ जाएगा। – Xufox

+0

यदि मोज़िला कहता है कि नल डेटा प्रकार है, तो स्ट्रॉ का अंत। वैसे भी उससे संबंधित कई मुद्दे रहे हैं। यह https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/typeof – Fawzan

1

चीजें वास्तव में सरल नहीं हैं जैसा कि उन्होंने ऊपर दिए गए उत्तरों में वर्णित है ...वे आम तौर पर javascriptland में शामिल नहीं हैं;)

typeof, 'सरकारी' समारोह एक type जावास्क्रिप्ट में पाने के लिए का उपयोग करता है है, लेकिन कुछ मामलों में यह कुछ अप्रत्याशित परिणाम सकती है ...

1। स्ट्रिंग्स

typeof "String" या
typeof Date(2011,01,01)

"स्ट्रिंग"

2. नंबर

typeof 42 या
typeof NaN, lol

"संख्या"

3. बूल

typeof true (मान्य मान true और false)

"बूलियन"

4. वस्तु

typeof {} या
typeof [] या
typeof null या
typeof /aaa/ या
typeof Error()

"वस्तु"

5. समारोह

typeof function(){}

"समारोह"

6. अपरिभाषित

var var1; typeof var1

"अनिर्धारित"

Alternative is to use({}).toString() जो आप कुछ और अधिक सटीक समय के सबसे अधिक उत्तर मिल जाएगा ...

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