जावास्क्रिप्ट में डेटा प्रकार

जावास्क्रिप्ट में डेटा प्रकार

यह लेख जावास्क्रिप्ट में डेटा प्रकारों की व्याख्या करता है।

YouTube Video

जावास्क्रिप्ट में डेटा प्रकार

जावास्क्रिप्ट में मानों को वर्गीकृत करने के लिए डेटा प्रकार होते हैं, जिन्हें व्यापक रूप से प्रिमिटिव प्रकार और ऑब्जेक्ट प्रकार में विभाजित किया जा सकता है। डेटा प्रकार तय करते हैं कि किसी वेरिएबल में किस प्रकार का डेटा संग्रहीत किया गया है और यह उसे कैसे प्रबंधित किया जा सकता है।

प्राथमिक प्रकार (Primitive Types)

प्रिमिटिव प्रकार सरल डेटा प्रकार होते हैं जो केवल एक मान का प्रतिनिधित्व करते हैं। जावास्क्रिप्ट में निम्नलिखित 7 प्रिमिटिव प्रकार होते हैं।

number

1let num = 42;
2let pi = 3.14;
3
4console.log("Value of num:", num);
5console.log("Value of pi:", pi);
  • number एक प्रकार है जिसका उपयोग संख्यात्मक मानों को संभालने के लिए किया जाता है, जिसमें पूर्णांक और फ्लोटिंग-पॉइंट संख्याएँ (दशमलव) शामिल हैं। ऐसे मान जिनकी सीमाएँ निर्धारित सीमा से अधिक होती हैं, उन्हें संभालने पर परिणाम Infinity या NaN (नॉट-ए-नंबर) हो सकता है।
1// Decimal calculations
2console.log(0.1 + 0.2 === 0.3); // false
3console.log(0.1 + 0.2); // 0.30000000000000004
4
5// Calculations with large numbers
6console.log(9007199254740991 + 1); // correct value
7console.log(9007199254740991 + 2); // incorrect value
  • जावास्क्रिप्ट में, संख्याओं को फ्लोटिंग-पॉइंट संख्या के रूप में दर्शाया जाता है। परिणामस्वरूप, कुछ दशमलव (विशेष रूप से जो बाइनरी में सटीक रूप से प्रदर्शित नहीं किए जा सकते) को सही तरीके से व्यक्त नहीं किया जा सकता है।
  • जब सटीक गणनाओं की आवश्यकता होती है, जैसे कि मौद्रिक मानों के लिए, तो ऐसे राउंडिंग त्रुटियों से बचना आवश्यक हो जाता है। उदाहरण के लिए, आप BigInt का उपयोग कर सकते हैं या toFixed() के साथ दशमलव स्थानों की संख्या समायोजित कर सकते हैं।

string

1let greeting = "Hello, world!";
2let char = 'A';
3const message = `"${greeting}" in JavaScript`;
4
5console.log("Value of greeting:", greeting);
6console.log("Value of char:", char);
7console.log("Value of message:", message);
  • string एक डेटा प्रकार है जिसका उपयोग टेक्स्ट को संभालने के लिए किया जाता है, जो वर्णों की एक श्रृंखला का प्रतिनिधित्व करता है। इसे एकल उद्धरण चिह्न (') या द्वैत उद्धरण चिह्न (") में टेक्स्ट को घेरकर दर्शाया जाता है। ES6 से, टेम्प्लेट लिटरल्स बैकटिक्स () का उपयोग करके वेरिएबल्स को आसानी से एम्बेड करने की अनुमति देते हैं। किसी वेरिएबल को एम्बेड करने के लिए ${}` सिंटैक्स का उपयोग करें।

boolean

1let isAvailable = true;
2let hasError = false;
3
4console.log("Value of isAvailable:", isAvailable);
5console.log("Value of hasError:", hasError);
  • boolean एक तार्किक मान का प्रतिनिधित्व करता है और इसमें केवल दो मान हो सकते हैं: true या false। इसे सशर्त अभिव्यक्तियों के परिणाम या एक फ़्लैग के रूप में उपयोग किया जाता है।

null

1let result = null;
2
3console.log("Value of result:", result);
  • null एक डेटा प्रकार है जो स्पष्ट रूप से 'कोई मान नहीं' को दर्शाता है। null को डेवलपर्स द्वारा जानबूझकर रिक्तता को इंगित करने के लिए सेट किया जाता है।

undefined

1let score;
2let subject = undefined;
3
4console.log("Value of score:", score);     // undefined
5console.log("Value of subject:", subject);
  • undefined एक डेटा प्रकार है जिसका अर्थ है 'अनिर्धारित'। undefined स्वतः सौंपा जाता है जब एक वेरिएबल घोषित किया जाता है लेकिन उसे कोई मान नहीं सौंपा जाता।

bigint

1let bigIntValue = 9007199254740991n;
2let anotherBigInt = 123456789012345678901234567890n;
3
4console.log("Value of bigIntValue:", bigIntValue);
5console.log("Value of anotherBigInt:", anotherBigInt);
  • bigint बड़े पूर्णांकों को संभालने के लिए एक डेटा प्रकार है। bigint बड़े पूर्णांकों का सटीक प्रतिनिधित्व करने की अनुमति देता है जिन्हें number प्रकार द्वारा दर्शाया नहीं जा सकता। bigint लिटरल्स को किसी संख्या के अंत में n जोड़कर दर्शाया जाता है।
  • bigint किसी भी आकार के पूर्णांकों को संभालने के लिए एक प्रकार है, जिसमें कोई सीमा निर्धारण नहीं है। हालांकि, bigint और number को सीधे एक साथ संचालित नहीं किया जा सकता है, इसलिए सावधानी की आवश्यकता है।

Symbol

1let sym1 = Symbol('id');
2let sym2 = Symbol('id');
3
4console.log("sym1 === sym2:", sym1 === sym2); // false
  • सिंबल एक डेटा प्रकार है जिसका उपयोग अद्वितीय पहचानकर्ता बनाने के लिए किया जाता है। इसे Symbol() का उपयोग करके बनाया जाता है और इसे किसी वस्तु (ऑब्जेक्ट) की संपत्ति के रूप में उपयोग किया जा सकता है। अन्य प्रिमिटिव प्रकारों के विपरीत, सिंबल में अद्वितीय मान होते हैं, इसलिए समान सामग्री के बावजूद इसे एक अलग सिंबल के रूप में माना जाता है।

ऑब्जेक्ट प्रकार

ऑब्जेक्ट प्रकार डेटा संरचनाएं हैं जो एक साथ कई मानों को संग्रहीत कर सकती हैं। ऑब्जेक्ट कुंजी-मूल्य जोड़ों का संग्रह है और इसमें गुण (प्रॉपर्टीज़) और विधियाँ (मेटोड्स) हो सकती हैं।

Object

1let person = {
2    name: "John",
3    age: 30,
4    isEmployee: true
5};
6console.log(person.name); // John
  • Object विभिन्न प्रकार के डेटा संग्रहीत करने वाले गुणों (कुंजी-मूल्य जोड़े) का एक संग्रह है। ऑब्जेक्ट {} के द्वारा प्रदर्शित होते हैं, और प्रत्येक प्रॉपर्टी की कुंजी और मूल्य के बीच : द्वारा कनेक्शन होता है।

Array

1let numbers = [10, 20, 30];
2console.log(numbers[0]); // 10
3console.log(numbers[1]); // 20
4console.log(numbers[2]); // 30
5console.log(numbers[3]); // undefined
  • Array एक सूची है जो व्यवस्थित तरीके से कई मूल्यों को संग्रहीत करती है। एरेज़ को [] का उपयोग करके प्रदर्शित किया जाता है, और मानों को , से अलग किया जाता है। प्रत्येक तत्व को उस अनुक्रमणिका (इंडेक्स) का उपयोग करके एक्सेस किया जाता है जो 0 से शुरू होती है।

Function

1function greet(name) {
2    return "Hello, " + name;
3}
4console.log(greet("Alice")); // Hello, Alice
  • फ़ंक्शन एक प्रकार के ऑब्जेक्ट हैं और कोड के पुन: उपयोग किए जाने वाले ब्लॉक हैं। फ़ंक्शन को function कीवर्ड का उपयोग करके परिभाषित किया जा सकता है।

अन्य ऑब्जेक्ट प्रकार

  • जावास्क्रिप्ट में Date, RegExp, Map, और Set जैसे इनबिल्ट ऑब्जेक्ट प्रकार भी होते हैं। ये विशिष्ट उपयोग मामलों के अनुसार डेटा को संभालते हैं।

प्रकार रूपांतरण

जावास्क्रिप्ट में अप्रत्यक्ष और प्रत्यक्ष प्रकार रूपांतरण अक्सर किए जाते हैं।

अप्रत्यक्ष प्रकार रूपांतरण

  • जावास्क्रिप्ट विभिन्न प्रकारों के बीच संचालन करते समय प्रकारों को स्वचालित रूप से परिवर्तित कर सकती है।
1let result = 5 + "5"; // "55" (the number is converted to a string)
2
3console.log(result);
  • इस उदाहरण में, संख्या 5 को अप्रत्यक्ष रूप से एक स्ट्रिंग में परिवर्तित किया जाता है, जिसका परिणाम स्ट्रिंग "55" होता है।

प्रत्यक्ष प्रकार रूपांतरण

  • डेवलपर्स प्रकार रूपांतरण को स्पष्ट रूप से भी कर सकते हैं।
1let num = "123";
2let convertedNum = Number(num); // Converts "123" to the number 123
3
4console.log(typeof num);
5console.log(typeof convertedNum);
  • इस उदाहरण में, Number() फ़ंक्शन का उपयोग स्ट्रिंग "123" को स्पष्ट रूप से संख्या 123 में बदलने के लिए किया जाता है।

प्रकार जाँच

जावास्क्रिप्ट में, आप किसी वेरिएबल के डेटा प्रकार को जाँचने के लिए typeof ऑपरेटर का उपयोग कर सकते हैं।

 1// Output: The type of 42 is: number
 2console.log('The type of 42             is:', typeof 42);
 3
 4// Output: The type of 42 is: bigint
 5console.log('The type of 42n            is:', typeof 42n);
 6
 7// Output: The type of "hello" is: string
 8console.log('The type of "hello"        is:', typeof "hello");
 9
10// Output: The type of true is: boolean
11console.log('The type of true           is:', typeof true);
12
13// Output: The type of undefined is: undefined
14console.log('The type of undefined      is:', typeof undefined);
15
16// Output: The type of null is: object
17console.log('The type of null           is:', typeof null);
18
19// Output: The type of Symbol() is: symbol
20console.log('The type of Symbol()       is:', typeof Symbol());
21
22// Output: The type of {} is: object
23console.log('The type of {}             is:', typeof {});
24
25// Output: The type of function () {} is: function
26console.log('The type of function () {} is:', typeof function () {});

निष्कर्ष

  • प्रिमिटिव प्रकार में number, string, boolean, null, undefined, और symbol शामिल हैं।
  • ऑब्जेक्ट प्रकार में Object, Array, Function, और अन्य शामिल हैं।
  • चूँकि स्वचालित और स्पष्ट प्रकार रूपांतरण दोनों होते हैं, डेटा प्रकारों के सही उपयोग को समझना महत्वपूर्ण है।

आप हमारे YouTube चैनल पर Visual Studio Code का उपयोग करके ऊपर दिए गए लेख के साथ आगे बढ़ सकते हैं। कृपया YouTube चैनल को भी देखें।

YouTube Video